![]() |
Спор по поводу типизации, традиций и всего подобного
Жуть какая... :) Прям 1C :) Ну, кроме всего прочего - return - это не функция, не нужны там скобки, а вот функциям нужны возвращаемые типы.
|
Ну что касается ретурна, привык я так. А функциям не обязательно ставить подпись возвращаемого типа. Это кому как больше нравится. В конкретно этой функции и так понятно что возвращается строка. Вида "Каталог(Каталог()Каталог(Каталог()))" В общем древовидная структура имеющая корневым каталогом экранныхобъект заданный в параметрах. http://vkontakte.ru/app1865199_46242160
Вот собственно ещё сырой пример работающий только со спрайтами. Вначале создаётся 100 вложенных случайным образом спрайтов, затем верхний из них отдаётся на растерзание вышеуказанной функции и из этого безобразия составляется деревце. Когда разберусь с типами можно будет составлять иерархию экранных объектов для реальных приложений... Про выход за пределы экрана не говорите, потом поставлю скрол рэкт и 2 скрол бара... Сейчас не до этого. Похоже мне нужны просто getQualifiedClassName () и getQualifiedSuperclassName(). Сейчас буду эксперементировать... |
Цитата:
|
Сколько криков слышал по поводу того как ПРАВИЛЬНО давать идентификаторы, как ПРАВИЛЬНО писать то-то и то-то. Компилятор компилирует это необходимо и достаточно, остальное вопрос стиля и привычки. Кто-то делает отступы, кто-то нет, кто-то пишет "{" в той же строчке что и объявление функции, кто-то на следующей. Обсуждать такие мелочи это обычный холивар)))
|
Цитата:
ps в flash develop без указания типа функции ты не скомпилируешь. |
Беру свои слова обратно. Но частично. По поводу быстродействия согласен, но ИМХО, это уже стоит делать когда всё готово, когда нужно просто вылизать код. Туда же точную расстановку идентификаторов доступа и т.п. Можно конечно сразу, а можно как-нибудь в другой раз. В cs3 всё нормально компилится, потому и говорю что без разницы. Тем более когда я код без особых раздумий создаю, сейчас у меня эта функция возвращает стринг, потом что-то ещё, потом может вообще решу что не нужно ничего возвращать... И если я буду расставлять каждой функции тип возвращаемого значения а потом забывать про него, то это ошибка и потерянное время ибо комп очень медленно у меня компилирует.
|
Да правильно. Зачем тогда вообще все функции выносить отдельно. Нужно все лепить в одно место! Все в одном классе, прям в конструкторе. Зачем проводить кастомизацию? Без типизации, вообще - зачем? - компилятор сам догадается!
А как же традиции? Встретил я как-то очень хорошую фразу, что плохие программисты выходят чаще всего из тех, кто не чтит традиции. |
YarikMudry Вместо того что бы "вылизывать" можно сначала все продумать - в том числе и то, что будет возвращать функция, а уже потом приступать к работе. Это куда более продуктивно, чем если " код без особых раздумий создавать" (вы же заботитесь о "потерянном времени")
|
Срач по поводу типизации, традиций и всего подобного
Цитата:
Традиция это бездумное необоснованное повторение чего либо. Ежели есть смысл делать так, а не иначе, то это уже целесообразность))) Во время проектирования как я уже говорил необходимо и достаточно чтобы компилятор не ругался и работал как надо. Остальное не так уж и важно. Это уже потом можно вылизывать код расставляя доступ к функциям, классам, раскидывать по пакетам, проводить типизацию... Всё оно желательно, но не обязательно по крайней мере в черновом варианте. Зачастую как раз наоборот мешает, отвлекает, является источником лишних ошибок... |
Пристрелите меня.
|
Немного не красиво скопировалось, но лучше не будет.
А по сути, чем пререкаться - задумались бы. Кроме того, ВКонтакте - редкостное *****, на него не то, что ссылаться, просто вспоминать без улыбки нельзя. |
YarikMudry все же, какой размер максимальный был у проекта который ты делал?
|
Цитата:
|
Да правда, зачем сразу по-нормальному писать. Давайте все сразу в кадрах. Черновой же вариант.
|
Цитата:
|
мда ну и программисты пошли …*
|
По поводу типизации, вот, представьте, стоите вы на футбольном поле у ворот противника, и к вам круглое летит... вы его "подправили" головой в ворота, а круглое оказалось пудовой чугуниевой гирей... А все порому, что тип летящего круглого объекта заранее не был известен.
Что до традиций, ну так вы выработали свою традицию, но только она ни на чем не основывалась, более того, как оказалось была ошибочной. От того, что вы что-то неправильно сделаете много раз, правильнее оно не станет... А традиции вообще - ну это как грабли, кто-то наступил, поставил знак - "тут не ходить", ну, нужно конечно понимать почему тут не ходить, но даже если слепо поверить написаному, на первых порах хуже не будет. |
Цитата:
|
Типизация = Объяснение новичкам не писать в клипах. Аналогично. Если код компилируется и делает свое дело, то о типизации задумываются в последнюю очередь. Если же проект ресурсоемок в плане быстродействия, то конечно, нужно обязательно делать типизацию. Многим лень ее делать. Если планируется устраиваться в какую нибудь контору, то приходится следовать традициям.
К то му же лояльность компилятора к типизации, помогает быстрее понять язык программирования, а все остальное зависит от самого программиста. |
Цитата:
|
2Oleg: а мне за слово "г*вно" + подарили :(
|
Типизация - нужна.
Кодстайл - нужен. Традиции - тоже не просто так. Вменяемых аргументов против этого не вижу в этой теме. |
CrazyFlasher
Тебе за орфографию и флейм :) |
У меня срач в шкафу.
|
Так можно думать если только работаешь сам на себя и делаешь что-то несерьезное.
Если же работаешь на кого-то с условием поддержки и (что чаще) добавления новых функций проекта, который ты выполнил, то соблюдение традиций и умение писать код, в котором хотя бы ты сам можешь разобраться - единственный путь к тому, чтобы потом просто не плюнуть на то что сделал и начать новое. А если и в новом плюнуть на типизацию и прочее, то вы наступите на те же грабли. Заметил, чем больше я соблюдаю традиции при написании кода, тем проще мне потом в нем разбираться и проще находить в нем баги. А чем больше узнаешь традиций(всех к сожалению я еще не знаю) и переписываешь в соответствии с ними свой код, тем качественнее получается выполненная работа. |
особенно покорило:
Цитата:
|
Цитата:
2Crazy: а мне за "к*кашулечку" |
Crazy, Psycho Tiger =) я за "м*ск" отмечен
|
Хахах) iNils с отпуска вышел работящий, теперь на всех плюсов хватит =)
|
Цитата:
|
Цитата:
iNils, как отдохнул? =) |
Цитата:
|
Отпуск у меня летом.
|
Хм, а мне поступала информация что отгул брал недельку =) От форума отдыхал?
|
А я никуда от форума и не уходил.
|
0о ну я представляю что будет после отпуска =)
|
Определение типов возвращаемых значений(и не только их, но и полей, констант и проч.) вполне может быть возложено на компилятор. В action script сие не доступно (к сожалению).
Код:
def func(a:int, b:int) = a + " " + b |
Так же скорбят об этом все JAVA- и Си-программисты. Только непонятно - где польза от того, что не видно с первого взгляда какой у переменной тип? Компилятору, допустим, видно =) А мне-то как?
Если честно, для меня строгая типизация послужила отличным способом начать писать более-менее внятный код Как вспомню AS1/2 бррр... |
[quote=Psycho Tiger;908826]Может мне выложить пару твоих классов здесь, взрослый дядя? :D/QUOTE]
Если б я хотел чтоб меня здесь забанили, двно бы сам выложил :D Зато плюс отбил у тебя охту плодить единорогов :mosking: Кстати хорошая идея: давайте банить за плохо оформленный код? |
Цитата:
|
| Часовой пояс GMT +4, время: 10:10. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.