Objective-C

kilj

Active Member
Команда форуму
NetVir, вот если бы одну букву изменить, то согласен на 100%

"а" на "е".

в слове "намного".

;)

ЗЫ: а говорю я так уверенно, потому что тоже пишу под сии девайсы.
 
Останнє редагування:

NetVir

New Member
kilj, ну у каждого своя шкала "не/на/много")))
скажем так, мне достаточно было почитать про объектную модель, откуда берутся "сообщения", файловая система, сендбокс приложения, иерархия модели фреймворков, я о пяти базовых (ядро, обертка, медиа, графика/анимация, кокоатач) и вперед.
Хотя, может не делал сильный упор на обучение. На написание первого приложения ушло 1 день теории, 5 дней практики с тестом. На второе - 10 дней с тестированием. Кому-то много, кому-то мало.
 

kilj

Active Member
Команда форуму
NetVir, я могу ошибаться, но считаю, что такого результата можно было бы добиться и после джавы, например. Любой ОО язык подошёл бы.

Собственно, если знать основные принципы, то всё равно на чём писать.

Опять же: имхо.
 

NetVir

New Member
kilj, ну почти правильно. Есть три этапа КАК вести разработку:
1) не понимаю но пишу, потому что так написано делать в документации
2) понимаю, что пишу, но еще не осознаю корень откуда и почему именно так сказано писать
3) полностью осознаю почему именно так говорят писать
(писать=реализовывать)
Век живи - век учись. Даже будь ты гением , то снуля все равно все не схватишь.
Лично у меня документация по дефауту открыта всегда на втором мониторе)))

Ну, а если по теме: был вопрос "Нужно ли знать С и С++ для изучения даного языка?"
Я говорю, что Да, нужно. Аргументирую - знание Си крайне крайне помагают понимать работу с памятью, фс, та и вообще взаимодействие с ОС, знание по Си++ крайне помагают понимать переход от обычного императивного кодинга к ооп (а главное - зачем!) и уже даже функциональному кодингу (хотя, функциональное программирование - это из другой области, из декларативного программирования).

Если переформулировать вопрос "Можно ли (начать) программировать на объектном Си без знаний по Си/Си++", то тоже отвечу Да, это возможно.

Вывод: если нужно в краткие сроки въехать в язык и приложения к нему, то не заморачиваться и сразу начинать разбираться без Си/Си++. Если время не жмет, то сначала Си/Си++, потом объектный Си. Или параллельно. Иногда такой способ осваивания тоже практикуют.
 

PainKiller

Пастафарианец
Команда форуму
Супер Модератор
kilj, ну почти правильно. Есть три этапа КАК вести разработку:
1) не понимаю но пишу, потому что так написано делать в документации
2) понимаю, что пишу, но еще не осознаю корень откуда и почему именно так сказано писать
3) полностью осознаю почему именно так говорят писать
(писать=реализовывать)
Век живи - век учись. Даже будь ты гением , то снуля все равно все не схватишь.
Лично у меня документация по дефауту открыта всегда на втором мониторе)))

Ну, а если по теме: был вопрос "Нужно ли знать С и С++ для изучения даного языка?"
Я говорю, что Да, нужно. Аргументирую - знание Си крайне крайне помагают понимать работу с памятью, фс, та и вообще взаимодействие с ОС, знание по Си++ крайне помагают понимать переход от обычного императивного кодинга к ооп (а главное - зачем!) и уже даже функциональному кодингу (хотя, функциональное программирование - это из другой области, из декларативного программирования).

Если переформулировать вопрос "Можно ли (начать) программировать на объектном Си без знаний по Си/Си++", то тоже отвечу Да, это возможно.

Вывод: если нужно в краткие сроки въехать в язык и приложения к нему, то не заморачиваться и сразу начинать разбираться без Си/Си++. Если время не жмет, то сначала Си/Си++, потом объектный Си. Или параллельно. Иногда такой способ осваивания тоже практикуют.
ПомОгают, это во-первых.
А зачем от императивного кодева переходить к ООП?)
И где там функциональное программирование?)
Ну и да, про 3 этапа.
В документации редко пишут самый быстрый или самый производительный вариант. В документации пишут обычно наиболее простые для понимания или реализации вещи со средней скоростью работы, производительностью.
Потому можно добавить 4 пункт - пишу как надо, не смотря на то, как написано в документации.
 

NetVir

New Member
А зачем от императивного кодева переходить к ООП?)
удобно, безопасно, компактно.
И где там функциональное программирование?)
lambda, etc

Потому можно добавить 4 пункт - пишу как надо, не смотря на то, как написано в документации.
Ну я это имел ввиду под третим пунктом. В смысле на третем этапе делаешь все правильно.
 

PainKiller

Пастафарианец
Команда форуму
Супер Модератор
удобно, безопасно, компактно.

lambda, etc


Ну я это имел ввиду под третим пунктом. В смысле на третем этапе делаешь все правильно.
Удобно ли, безопасно ли, зависит не только от парадигмы, но и от кода.
Насчет компактно, видел много негативных отзывов из-за избыточности ООП, да и сходу не могу придумать задачу, решение которой средствами ооп занимало бы меньше места, чем решение ее же средствами функционального или императивного программирования.
Не все то лямбда, что анонимное, и что там еще за etc?)
 

NetVir

New Member
Удобно ли, безопасно ли, зависит не только от парадигмы, но и от кода.
Насчет компактно, видел много негативных отзывов из-за избыточности ООП
Ну, бумагой тоже можно порезаться.

да и сходу не могу придумать задачу, решение которой средствами ооп занимало бы меньше места, чем решение ее же средствами функционального или императивного программирования.
Любой проект, в котором на столько много сущностей, которые качественно очень близки между собой, но для решения задачи необходимо новое введение типа.

и что там еще за etc
etc = и так далее
 

PainKiller

Пастафарианец
Команда форуму
Супер Модератор
Ну, бумагой тоже можно порезаться.
=)
Любой проект, в котором на столько много сущностей, которые качественно очень близки между собой, но для решения задачи необходимо новое введение типа.
Я же попросил именно задачу. Про фабрики фабрик фабрик я и так в курсе.
И можно примерчик?)
Я знаю, что такое etc)
Вот именно это "и так далее" я бы хотел увидеть.
 

NetVir

New Member
Я знаю, что такое etc)
Вот именно это "и так далее" я бы хотел увидеть.
функторы, деревья выражений.

Я же попросил именно задачу. Про фабрики фабрик фабрик я и так в курсе.
я как раз старался не употреблять ни одного из шаблонов, а намекал на силу инкапсуляции, наследования и полиморфизма.

И можно примерчик?)
пример в моем случае будет достаточно надуманной штукой. И, даже, если я приведу пример, можно будет апеллировать тем, что в этой задаче нет никакого практического значения. По существу - вы задачу можете и на ассемблере сделать, но смысл?
Ну если так хочется - попробуйте реализовать классификатор объектов (без использования ООП) по признаку наследственности.
 
Зверху