PHP Objective-C [kapalı]

7 Cevap php

Oldukça deneyimli PHP geliştiricisi olmak, ve C adil bir bilgiye sahip (babamın NEC mikroişlemcisi 16 ile dağıtılan bilgisayar deney demiş), ben sonunda Mac entegre etmeyi hedefleyen, Objective-C ve kakao için hamle yapmak istiyorum / iPhone benim PHP projeler bazı uygulamaları.

Arron Hiilegass tarafından kitap "Mac OS X için Kakao Programlama" geçiyor, ben biraz sinirli alıyorum. Ben örnekler çalışmak mümkün, ama o tam olarak why o şekilde (int yerine NSNumber ya da örneğin çift) bir sınıf kullanıyor açıklamıyor.

Ben ilk Objective-C eğilmek için iyi bir kitap / kitap arıyorum. Benim soru ne iyi bir kitap olurdu, değil mi? Ben "Objective-C 2.0 Programlama" bakıyorum ve oldukça iyi görünüyor. Nereye oradan gitmek istiyorsunuz? Ben o zaman benim kakao kitap yeniden başlamak gerektiğini düşünüyorum.

Ayrıca, PHP Objective-C geçişte yardımcı olacak internet üzerinde herhangi bir kaynak var mı? Ben PHP gevşek daktilo betik dili olduğunu biliyorum, bu yüzden onun farklılıklar vardır. Sadece Obj-C ve kakao ile mantıklı değil bazı şeyler, ben neden bir NSMutableArray içine tamsayıları koyamazsınız vardır?

Her neyse. Yardımın için teşekkürler! (Ben sadece 14 yaşındayım, bu yüzden benim S. herhangi bir hata yaptıysam bana gitmek kolay)

7 Cevap

Ben sadece "Objective-C 2.0 Programlama" kendimi gittin, ve oldukça iyi. Ben (benim gibi, bunu unutursanız ya da), C hiç kullanmadıysanız, özellikle bunu tavsiye ederim.

Ancak Apple, gerçekten mükemmel belgelerine sahiptir. Eğer online okuma sakıncası yoksa, ben onların Getting Started with Cocoa sayfa ile başlamak istiyorum.

I'm able to work the examples, but he doesn't explain exactly why he's using a class in that way (NSNumber instead of int or double for example)...

There are some things that just don't make sense with Obj-C and Cocoa, why can't I put integers into an NSMutableArray?

NSNumber is a much more useful type than a primitive type like int veya double, bu genellikle Kakao programlamak gibi koşacağız diğer nesnelerle birlikte kullanıldığı gibi.

Örneğin, (bir NSMutableArray gibi) boyutlandırılabilir bir dizi ya da bir ilişkisel dizi (bir örneği NSDictionary ), you need to turn the number primitive (int içine bir değeri olarak bir sayı paketlemek amacıyla, double, vb) bir serializable, veya archivable nesnesine - bir NSNumber.

Ilkel "Core Vakfı" türleri (NSNumber, NSArray temel kümesinde değil çünkü İlkelleri {, bir NSNumber aksine, getirilemez [(3)]}, vb) Apple sizin için kullanılabilir hale getirmek için çok çalıştı ki.

Ayrıca, kullanarak NSNumber de ücretsiz ikramiye kolaylık yöntemleri bir sürü olsun: hızlı bir şekilde sadece yazarak, örneğin, bir dizeye dizi dönüştürebilirsiniz [myNumber stringValue].

Eğer tedavi ediyorsanız ya, senin NSNumber şey ("1,23 $") olarak fiyat olarak, emin olmak için bir NSNumberFormatter uygulayabilirsiniz sayısına işlemler vermek (Eğer iki fiyat değerleri eklerseniz, örneğin, karşılığında bir para birimi değer almak için beklediğiniz) beklediğiniz biçimi var sonuçları.

Bunu yapamazsınız demek veya int veya double değişkenleri kullanmak gerekir değil. Ancak birçok durumda, göreceksiniz bir NSNumber bu size daha az kod yazabilirsiniz ve "özgür" için işlevsellik bir sürü almak, daha iyi bir seçenektir.

Benim durumumda, ben internet docs Obj-C ve CocoaTouch öğrenme yeterince yardımcı olmak için bulduk. Benim ilerlemesi böyle bir şey gitti:

1) iTunes (hepsi ücretsiz) hakkında Apple Dev videoları izleyin.

2) Okuma Getting Started, iPhone Application Programming Guide.

3) Oku OOP In Obj-C.

4) Devamını oku: Cocoa Fundamentals, Objective-C Primer, Cocoa Practices.

5) bazı basit öğreticiler yapın.

IMO: İhtiyacınız olan tüm bilgi Apple Dev üzerinde: iPhone bir site. Tasarruf ve kitap satın almayın. Eğer anlamadıysanız bir şey kılavuzları veya öğreticiler biriyle yapılır "NEDEN", ​​çapraz Google diğer kaynaklar ile hemen başvuru.

Sen lazım learning curve Burada pretty big. Bu benim için ve ben üniversitedeyken her gün bu gibi şeyler okuyorum olduğunu akılda tutmak ettik. Yani, sopa ile ve (biliyorsun yağsız şeyler) akıllı bir şekilde okuyun. Daha sonra ağırlıklı olarak bunun için bir sözdizimi sorun olduğunu programlama, veri akışını iPhone nasıl çalıştığını anlamak ve bilmek ne kendim görmek, olduğunu.

PHP Objective-C çok farklıdır. Dahası, programlama, internet bağlamında PHP çözülür şekilde programlama sorunları iPhone bağlamında, Obj-C çözülür şekilde çok farklıdır. Bu nedenle, yeni bir bakış açısıyla iPhone yaklaşmak istiyorum, ve bir öğrenci / öğrenci olarak. Acele etmeyin ve Object Oriented Programlama ve en iyi uygulamaları odaklanmak. Bu yıllar boyunca sizi korusun olacaktır.

-Buffalo

Ayrıca, sorularınızı cevaplamak için:

Objective-C C'nin üstüne bir uzantısı olarak inşa nesne yönelimli bir dildir

Gibi bu hem ilkel (int ve double gibi) türlerini ve nesneleri sağlar.

NSNumber bu sayının (yöntemleri) üzerinde bir dizi PLUS işlemler bir dizi temsil eden bir Objective-C sınıfı. Sayısal ilkel türü üzerinde bir NSNumber kullanmanın avantajı, (sen ölçüde "protokoller" ile onun işlevselliğini can, ona mesaj gönderebilirsiniz nesne yönelimli bir şekilde kullanılabilir olduğunu, ondan miras olabilir iletebilirsiniz bir nesne vb beklediği bir yöntem.)

NSMutableArray gelince, bu dizi gibi işlevselliği sağlayan bir sınıftır. Bu Objective-C nesne tipleri ile çalışmak için tasarlanmış (bu NSObject türü nesneler ve onlardan devralan nesneleri bir kap) ve bu bir tamsayı içeremez nedeni olduğunu. Ancak, bir tamsayıyı temsil eder objektif-C sınıfı bir NSInteger içerebilir.

Ben şahsen ilk http://developer.apple.com/library/mac/navigation/ ve oradan kakao gitmeden de elma referanslarından Objective-C öğrenmek için çalışacaktı.

Ben benzer bir tekne idi (PHP Objective-C hareket) ve ben iyi süreç bir proje içine atlamak bulundu. Ben de Hillegass kitap geçti ve iyi bir başlangıç ​​oldu ama bir dil bilmek almak için tek yolu sadece net bir hedefi ile üzerinden geçinip etmektir.

Bu acı ama o çalışıyor. Kahve, API'ler ve kağıt mendil.

EDIT:. Ben sadece senin yazının son bölümünü okuyun ve 14 olduğunu gördüm belki kola kahve geçiş :)

Eğer herhangi bir yerde hiç geliyorsun benim favori Objective-C öğretici iOS programlama üzerine Stanford iTunesU derstir. Profesör gerçekten diğer kitap ve çevrimiçi öğreticiler perspektif şeyler koyar.