Ресурсы для сравнения Java с Objective-C (синтаксис и основы)

За последние полтора года я многому научился в Objective-C и даже смог опубликовать несколько приложений для iOS в App Store. Понятия объектно-ориентированного программирования, которые раньше были мне чужды, теперь стали второй натурой, и я понимаю MVC, наследование, полиморфизм и т. д. Теперь мне интересно научиться разрабатывать для платформы Android, что повлечет за собой изучение Java. Я хочу найти ресурсы, которые могут сопоставить основы Java в отношении синтаксиса и структуры с теми же вещами из мира Objective-C.

Запись в Википедии для Objective-C имеет именно то, что я ищу в отношении того, как Objective-C соотносится с C++. Если есть документ, запись в блоге или книга, посвященная чему-то подобному для Java по отношению к Objective-C, я бы набросился на него, как медведь на мед. Он должен включать такие вещи, как

  • Объявления и реализации методов класса
  • объявления и реализации методов экземпляра
  • Как составить имя метода (т.е. +/-(returntype)methodName:(type)argument; )
  • объявление свойств

Спасибо за все ваши предложения!


person Justin    schedule 20.12.2010    source источник


Ответы (2)


«Сопоставление синтаксиса» не обязательно полезно. Два языка — это не просто разные синтаксисы для одного и того же. Многие люди переходят на новый язык с таким мышлением, и это приводит к тому, что они пишут плохой код на своем новом языке. Например, методы класса в Objective-C примерно эквивалентны статическим методам в Java, но методы класса могут быть переопределены в подклассах, в то время как статические методы могут быть скрыты только новыми статическими методами — они больше похожи на функции с именами, чем на методы.

Лучше просто изучать Java по хорошей книге или учебнику — без своего багажа от Objective-C.

person Chuck    schedule 20.12.2010
comment
Я не мог не согласиться с этим утверждением. - person extremeboredom; 21.12.2010
comment
Я хочу попытаться перенести часть моего базового кода iOS на Java (конечно, без Cocoa), и мне любопытно, как создать мои базовые классы и настроить их. Я использую кучу пользовательских объектов и хотел бы инициализировать их в среде Java. Вот почему я ищу сравнение синтаксиса, потому что я заинтересован в переносе - person Justin; 21.12.2010
comment
Я отмечу это как выбранный мной ответ, если вы сможете указать мне хороший ресурс Java, о котором вы знаете, который предназначен для всех, кто программировал Objective-C. - person Justin; 21.12.2010

Похоже, на этих слайдах есть достойная информация: http://jonathanlehr.files.wordpress.com/2009/09/objective-c-and-java.pdf, если вы можете пропустить общие введения.

person Matt    schedule 20.12.2010
comment
Проголосовал за, но не могу смотреть на это за моим прокси на работе =( Я скоро продолжу! Спасибо за ссылку, сэр - person Justin; 21.12.2010