Я знаю Руби прямо сейчас, однако я хочу изучить новый язык. Я запускаю Ubuntu 10.04 прямо сейчас, но я собираюсь получить Mac позже этим летом. В любом случае я хочу что-то еще для разработки графического интерфейса. Мне было интересно, следует ли мне сейчас изучать C на Ubuntu, а затем узнать Objective-C, когда я получу iMac? Будет ли изучение C дать мне преимущество? Или я должен просто изучить Python на Ubuntu, а затем узнать Objective-C, когда я получу новый компьютер?Если я начну изучать C на Ubuntu, это даст мне преимущество, когда я начну изучать Objective-C позднее этим летом?
ответ
Конечно Objective-C достаточно легко узнать, если вы знаете, C и довольно много книг на Objective-C, даже предполагаю, вы знаете C.
Также рассмотрите немного узнать о MacRuby для разработки графического пользовательского интерфейса;)
MacRuby выглядит потрясающе! Может быть, я должен запустить мой старый Хакинтош! : D – Anonymous
Часто полезно изучать языки программирования в том порядке, в котором они были созданы. Люди, которые написали Objective-C, явно имели C и его синтаксис, особенности и особенности, когда они определяли язык. Это не может повредить вам, чтобы изучить C сейчас. Возможно, у вас есть некоторое представление о том, почему Objective-C структурирован так, как это происходит позже.
C имеет большую, классическую книгу на ней, Язык программирования C по Кернигану & Ритчей, который является коротким и легко усваивается, если у вас уже есть другой язык под поясом.
Если вы собираетесь начать обучение C на Linux, вам нужно начать с Glib и GObject ... Gtk для графического интерфейса и т. Д. Они являются самыми распространенными и легко узнаваемыми библиотеками для выполнения многих задач которые, к сожалению, остались вне стандартной библиотеки C.
Вы получите некоторый смысл объектно-ориентированного дизайна, так как GObject реализует систему типов сверху C, но синтаксис, вероятно, смутит вас больше, чем поможет при переходе к Objective-C. Например, все имена функций в C находятся в глобальной области, в зависимости от того, что включает ссылки на исходный файл. Группы функций для работы с определенным набором типов имеют префикс одинаковый, используя имя типа объекта, к которому они принадлежат.
gtk_widget_show_all(widget);
против
widget.showAll();
Это только синтаксическое различие, поскольку есть очень реальный тип системы реализован, он просто не является частью языка C, но реализован поверх него по GObject. В GLib и GObject есть отличные уроки, чтобы вы начали.
Обучение C определенно поможет, так как Objective C наследует множество свойств и добавляет к ним.
Вы можете узнать Objective C либо из «Learn Objective C на Mac», это действительно отличная книга, а затем, если вы планируете изучать какао, получите «Learn Cocoa on the Mac» или тот, который Джеймс Дэвидсон , они должны дать вам прекрасное начало, вы можете подумать о том, чтобы переместить его в Hillegass, а также для разработчика «Objective C Developer Handbook» Дэвида Чисналла, это хранитель, вы можете прочитать его через месяц или два.
Для компилятора я хотел бы указать, что вы clang, хотя комбинация gcc и gnustep будет работать. clang - лучший выбор, если вы хотите работать с функциями Obj C 2.0, и он находится в тяжелом развитии.
Да. Узнайте, как программировать в C.
- 1. Должен ли я изучать Java или изучать C++?
- 2. сколько мне нужно знать Java, прежде чем я начну JSP?
- 3. Если я начну сегодня, какое оборудование нужно разработать для iOS
- 4. Должен ли я изучать Скала?
- 5. я хочу изучать программирование win32
- 6. Должен ли я изучать AWT, прежде чем изучать Swing?
- 7. Должен ли я изучать GTK + или GTKMM?
- 8. Как сделать UITextView видимым, когда я начну печатать?
- 9. Зачем мне изучать COM?
- 10. Должен ли я изучать C++ или ASM?
- 11. Должен ли я изучать NHaml?
- 12. Должен ли я изучать C++ или java?
- 13. что с этим кодом? Я только начал изучать Python
- 14. Как мне научиться изучать андроид?
- 15. Я пытаюсь создать виртуальный магазин (я только начал изучать C++)
- 16. Зачем мне изучать фреймворк PHP?
- 17. Как мне начать изучать SAP?
- 18. Я хотел бы начать изучать эмуляцию оборудования?
- 19. Должен ли я изучать рекурсию перед ООП?
- 20. C++ Что изучать дальше
- 21. Должен ли я изучать mysqli или PDO?
- 22. Должен ли я изучать Openedge как программист на C#
- 23. Если я подозреваю, что наш сайт взломан и украдены данные, где я начну искать доказательства?
- 24. Должен ли я изучать C до изучения C++?
- 25. Где я должен начать изучать Highcharts JS?
- 26. AWS Lambda - Если я начну тему, что происходит, когда лямбда замерзает/оттаивается?
- 27. Должен ли я изучать XML перед WCF?
- 28. Какой язык программирования я должен изучать?
- 29. Должен ли я изучать новый язык программирования?
- 30. Где я начну узнавать о программировании чего-то вроде программы IM?
Связанный вопрос nhttp: //stackoverflow.com/questions/447942/game-programming-on-objective-c-and-linux – R0MANARMY
Почему бы вам не просто изучить Objective-C, если это ваша конечная цель? – Clifford