Статистика |
 |
Онлайн всего: 1 Гостей: 1 Пользователей: 0 |  |
 |
|
 | |  |
| Главная » 2014 » Май » 31 » As3 готовые эффекты появления текста. #382 HTML5 and Flex Framework
|
As3 готовые эффекты появления текста. #382 HTML5 and Flex Framework
|

Спасибо за классный подкаст. Вот ценю такие технические подкасты больше всего.
У меня есть несколько вопросов:
1. Вопрос по книге. А как вы пишите книгу? Автор вот этой заметки: http://www.ademiller.com/blogs/tech/2013/01/writing-a-programming-book/
Говорит, что сначала пишет примеры кода до написания тестов, потом на основе сэмплов пишется текст, который их объясняет. Во время написания текста – вносятся изменения в сэмплы кода.
А вот вы пишете сначало код, а потом текст или наоборот?
2. С какого языка, по вашему мнению, стоит начать путь программиста? Со скриптовых языков (Perl, Ruby, Python) или типизированных (C++, Java, C#) ,
Моим первым языком, который я серьезно изучил – был Perl. Это скриптовый язык с по началу непредсказуемым поведением :). Да, в нем неопределенная переменная может значит либо undef, либо ноль, либо false. Да, приходилось писать тесты, добавлять легирование, но в итоге – я был полностью доволен результатом.
Perl помог мне изучить и быть готовым к сюрпризам JavaScript, а на C# стало просто легче писать код, ведь на этапе компиляции можно выявить множество проблем.
Но, вот людям, по моим наблюдениям, начавшим работу со строго типизированных языков – использовать JavaScript довольно сложно.
3. Автоматизация тестирования. Пишете ли вы юнит-тесты для JavaScript, Flex, Java? Или считаете, что это трата времени? Используете ли вы Node.JS для юнит тестов и для серверных приложений?
-
1. Зависит от темы главы. Если в главе будут практические примеры, то лучше их написать сначала. Наша книга очень практическая — мы делаем реальное Web приложение, поэтому большинство глав начинается с написания кода.
2. IMHO, Java. Это богатый, но не очень сложный язык для изучения. А знать приципы объектно-ориентированного программирования не помешает. А помощь компилятора действительно очень важна и при изучении, и при разработке.
3. Политики обязательного написания юнит тестов в нашей компании нет. Если некоторым программистам это полезно, то они пишут. У меня нет однозначного мнения насчет полезности их написания. На JavaScript они полезнее, чем на Java, т.к. там легче поломать работающий код. У нас серверная часть всегда на Java, поэтому Node.js пока не используем.
-
Спасибо Якову и Анатолию за интересные рассуждения. Где ещё можно послушать такие вещи, даже и не знаю. На ковыряние интернетов времени особо нет, а здесь всё свежее и вкусное, ещё раз спасибо.
Для молодого спеца, слово «JavaScript» в резюме дает гораздо более широкие возможности, чем слово «Flex». Многие крупные компании считают знание JavaScript плюсом, тк. имеют проекты на соответствующей технологии. По моим наблюдениям соотношение предложений на JavaScript-Flex для back-end разработчиков от 90%-10% до 95%-15%. Если смотреть с такой позиции — JavaScript в гораздо более выигрышном положении.
Анатолий говорит, что Flex это Бусидо для девелоперов. Мол работайте на тру-платформе, не разменивайтесь и вам зачтется. И это тоже подход. А насчет отмирания… в штатах достаточно вакансий для Cobol, Delphi, VB.NET, ColdFusion и тд., по сравнению с которыми Flex — новорожденный. И люди с такими программеско-нишевыми знаниями зарабатывают на уровне с другими разработчиками (не знаю правда, какие возможности для роста, тут вероятно есть проблема), в общем хлеб насущный им есть сегодня и будет завтра. Тем более не прыгая с тренда на тренд есть возможность спокойного роста программиста в серьезного спеца в технологии, что гарантирует востребованность и хорошую компенсацию за труд.
Резюме я вижу в том, что есть разные типы людей — по характеру, темпераменту, целям, и все эти факторы влияют на выбор первого или второго пути. Оба варианта могут быть успешными при правильном подходе и прекрасно, что IT дает такой выбор. Наслаждайтесь и выбирайте рубашку по размеру.
Яков, имею к вам важный для меня вопрос. Хочу подобрать удобную систему для управления проектами/багтрекинга, ибо та, с которой работаем сейчас, по моему мнению не удобна и расходует время в пустую. Так вот:
1. Какую систему управления проектами вы используете?
2. Это одна система для всей компании или каждый отдел/комманда использует что-то своё?
3. Используете ли вы Agile методологию при разработке проектов?
-
-
Замечания справедливые, машинный код это всегда машинный код. Даже если присутствует избыточность кода или длительное время компиляции, программа работает и задача решается.
Про Фортран не упоминал тк. эта вещь вполне даже используется в научных целях насколько я знаю. VB.NET действительно в 20-ке tiobe.com. Вакансий на него по факту не много, что и отражает цифра 1.043%.
А вот про ColdFusion немного интересного накопал:
ColdFusion is used by 1.1% of all the websites whose server-side programming language we know.
Popular sites using ColdFusion:
Adobe.com
Neobux.com
Bankofamerica.com
Bild.de
Target.com
Rr.com
Politico.com
Nasa.gov
Shareasale.com
Welt.de
Sites using ColdFusion only recently
Independent.co.uk
Ed.gov
Berkeley.edu
Lapresse.ca
777ue.com
Не трендовая вещь, а поддерживать и допиливать такие сайты тем не менее кто-то должен.
-
Любопытный персонаж.
С одной стороны какой-то явный ассемблер-программист, до сих пор не избавившийся от комплекса, что всё что не компилируется, якобы, плохо.
С другой стороны, упертый в конкретную технологию выход за рамки которой равносилен расстрелу. Ну, вот, что делать, если во флексе нет нужной компоненты? Не предусмотрела адобе её? Нет — значит нам это не надо? Ну, да, ну да…
Предсказание о том, что будущий браузерный язык будет похож на экшнскрипт более чем странное. Похож в чём? Синтаксисом? Да ведь все современные языки традиционной парадигмы синтаксически схожи. Лучше тогда сказать, — будет похож на си. Семантически? Так у экшнскрипта очень бедная семантика. Создать язык беднее — ещё постараться надо. Ну, и лучше всего оценивает и язык и его место в современном мире высказывание самого же Анатолия о том, что его программисты (с уровнем тимлида), запертые несколько лет в узком и ограниченном мирке простенького и бедного языка даже не могут осилить не то, что яваскрипт, а даже высокоуровневый фреймворк на нём, уже скрывающий семантическую сложность языка. По-моему, профессиональная деградация, не?
-
Dime,
Все правильно, да, программировал на ассемблере, виноват, и даже в машинных кодах, так что не всегда с компилятором. Кстати, там семантических изысков тоже не было, и жили не тужили, компилировали в голове, читали перфокарты. Единственное что отличается сейчас это возможность выбора. Раньше ее не было.
В подкасте речь шла именно о специализированных языках и средах программирования, а вовсе не о вселенских вопросах типа компилировать или пусть комп сам догадается.
Все объектно ориентированные языки похожи, и задача системных программистов в унификации а не в изобретении «новых» неизведанных семантических конструкций. Для сравнения рекоммендую посмотреть на компилируемые версии JavaScript такие как JScript.NET и сравнить их синтакс с экшнскриптом. Корреляция будет очень высокой. Если с другой стороны посмотреть на все уловки по созданию объектно ориентированных фрэймверков на классическом JavaScriptе налицо ручная трансляция ОО концептов в «псевдо ассемблер». Эта ручная, не поддержанная валидацией, проверкой инициализации, оптимизаторами, и прочими отживщими технологиями пропагандируется как святая простота. Извините заранеее, но есть разница между святой простотой и блядской наивностью.
Флекс объединяет декларативный расширяемый (очень важно) НТМЛ с языком программирования. В результате у вас есть возможность решать какие части программы должны стать декларативными и где провести границу между переиспользованием и скриптингом. И в случае ошибки быстро провести рефакторинг.
С уважением
Анатолий
-
Не очень понимаю зачем нужна унификация, тем более, что она возможна в этом смысле только выборкой минимального подмножества из всех языков. Какой-то это безумный путь. И это всё уже есть. Называется — бейсик. Если вам нужна функциональность не входящая в этот базовый набор, придётся сидеть и ждать когда вендор удосужится включить данную функциональность в и без того гигантский рантайм. Экстенсивный путь и профессиональная деградация прикладников.
Что касается яваскрипта — вы просто хотите от него того, чем он не является. Он не является ОО-языком в тех жёстких рамках в которые вы его хотите загнать в силу _вашей_ привычки или чего похуже. Да, разумеется, если вы хотите писать на яваскрипте в стиле прошловековой давности — бейсика с объектами, вам придётся худо. Хуже может быть только программирование на экшнскрипте полностью игнорируя событийную модель. Представили? Ужаснулись? А ведь в «классическом», или, более того, «унифицированном» ОО-языке НЕТ событийной модели. Ну, и помогли вам эти ваши ляхи (унифицированность)? Пишите на яваскрипте в стиле яваскрипта и будет вам щастье. Да, это делается _иначе_ чем на вашем бейсике, но с чего вы решили, что иначе — значит хуже?
Валидация, инициализация? Да ладно! Пишите на том же кофескрипте. Будет вам компиляция и валидация. Да и сам язык прикольнее яваскрипта и позволит пережить ломку от «неправильности» объектной модели :).
Оптимизация? Да ладно! Вы же на яве пишите. Чем вам JIT-оптимизация плоха? В условиях зоопарка целевых платформ JIT рулит, бибикает и кроет статическую оптимизацию как бык овцу.
И, возвращаясь к подкасту, удивила претензия к HTML по части его многоплатформенности. Ну, да, писать в многоплатформенной среде сложнее, чем в одноплатформенной. Но ведь и результат качественно иной. Ну, пишите только под одну платформу и будет вам ровно как флекс. Ах, придётся затачивать стили под другую платформу? Ну, да, придётся. Так ведь вы получите приложение работающее на двух (и тд) платформах! В случае с флексом вам, да, не придётся ничего ни куда затачивать, но ведь и эти дополнительные платформы окажутся вне вашего покрытия.
-
Dime,
История повторяется, на новых витках. Какой смысл глядеть вперед если весь опыт сзади?
Итак налицо отсутствие изучения истории и осмысления процессов. Поэтому каленым железом.
1. Унификация необходима для упрощения коммуникаций между людьми. В первые 4 года программирования выучил 40 языков. Поговорить на этих языках было не с кем и не о чем.
2. JavaScript это больше Бэйсик чем все остальное — собственно и делался как таковой. Современная стилистика это попытка объектно ориентированного программированния вручную. Ничем не отличается от первых, объектно-ориентированных библиотек на С, если вспомнить или заглянуть в Википедию, первые версии С++ были макропроцессорами — и числом их было десятки. Соответсвенно, были десятки диалектов С++, с разными библиотеками.
3. Когда убили диалекты С и С++ стало лучше — код портировался быстро, просто, надежно. Компиляторы решали 99% проблем совместимости и надежности. Макропроцессоры и фрэймворки для них тоже.
4. Размер рантайма — ну это просто смешно. Интерпретатор, да с JIT-оптимизацией и своим рантаймом меньше чем просто рантайм? Загружемый на каждой странице и компилируемый на лету JavaScript со всеми фрэйворками меньше чем скомпилированный и пролинкованный до минимума код? В районе версии 3.5 Флекса все оптимизации по загрузке были доведены до нормального состояния — если вы не пишите «Hello World» разница будет не в пользу JavaScript
5. По мере роста количества кода на клиенте проблемы интерпретаторов растут экспоненциально — где модульность, можно или нет деаллоцировать память, как передавать на клиенте данные между страницами/модулями, и т.д и т.п.. Хорошо для обеспечения общей занятолсти, но есть вещи поинтересней.
6. Ну и наконец насчет многоплатформности. Тут я как раз ругал Адобе за то что они не держатся на уровне — много багов, не все работает. Но это касалось ядра, и ни коим образом не маркапа. На уровне НТМЛа в мобильных платформах все так же ужасно. Пусть тот кто написал НТМЛ бизнесс аппликацию (не игру, не паблишинг сайт) с одним исходником для десктопа и телефона отзовется, покажет, и я не только с удовольствием переменю свое мнение, но и попытаюсь воспользоваться идеями.
А пока,
С уважением
Анатолий
П.С.. Есть еще одна вещь о которой никто не говорит. Связана с возрастом. На сборочных линиях электроники в Китае нет людей в возрасте > 30 лет, большинство до 25. Ослабляется внимание, руки начинают дрожать, есть другие мысли/дела несовместимые с необходимостью постоянно концентрироваться на работе. За 10 лет люди изнашиваются в хлам. Инстинкт самосохранения приходит поздно, иногда слишком.
-
Вы берете одну сторону джаваскрипта и сравниваете ее c as3, конечно же он проиграет. JS — плохой OO язык (и честно сказать вообще не очень хороший язык), но зато у него неплохо удается совмещать ОО и функциональный стили, и это дает интересные возможности, благодаря ним существуют такие замечательные библиотеки как underscore и d3. Flex и HTML 5 нельзя сравнивать только по некоторым параметрам. Надо брать в расчет несравнимо большее js сообщество, огромное колличество инструментов, библиотек и открытость технологии.
Я говорю это по своему, гораздо более скромному, но опыту. Около 5 лет флекса, и вот уже год JS. Джаваскрипт не плохой, и не такой, каким он был в 2005, он другой, и к нему нужен другой подход.
А молодому программисту я бы дал такой совет: не стоит учить флекс без очень веских оснований. Стать сильным программистом можно и с более востребованными языками.
-
Здравствуйте, подкаст очень понравился, но вот вопросы который мучает меня 2 года и по сей день. Кратко о себе — я закончил 4 ый курс, и есть свободное время до июля (так как в июле в армию). Хочу устроиться начинающим программистом, как ученик , чтобы получать навыки, изучаю язык Python, хотя базовые основы уже знаю, но вот и Django подключил, но мешают вот какие вопросы:
1) А стоит ли вообще браться за Django ? (на данный момент я редко встречаю проекты на Django)
2) Стоит ли смешивать изучение Питона + фреймворки (js, html5) ?
3) Есть ли будущее у Django и Питона в плане востребовательности.
Как Вы говорили в подкасте, что молодой специалист боиться потерять время на изучении той или иной технологии, которая в дальнейшем не будет востребовательна. Я тоже переживаю, что изучу я Питон + Django и останусь не востребовательным, а в нашей стране Азербайджан (нету вакансий на Питонщиков). Нужен Ваш совет очень.
Спасибо заранее Вам.
-
Привет, Эльдар.
Отвечу я, можно?
>>стоит ли вообще браться за Django ?
Да, стоит. Питон нужная штука, просто СНГ — окраины цивилизации.
>> Стоит ли смешивать изучение Питона + фреймворки (js, html5) ?
Однозначно, питон это в основном веб.
p.s. Вместо защиты родины ехал бы ты лучше в другую страну и устраивался бы программистом. На Украине, к примеру, вашего брата — кавказца уже много, у своих поддержку найдешь всегда + отношение у коренных толерантное. Украина никогда не была страной с проблемами по нац. вопросу.
-
Здравствуйте, спасибо за ответ, согласен на счет переезда, но не все так легко, дело в том, что я хочу остаться в своей стране и делать продукты здесь, но вот вся проблема в том , что начинать здесь сложно, в том плане что нет вакансий на мою специальность (Питонщика), и для переезда нет необходимых навыков и практики в этом деле. Есть к примеру требования — C#, C/C++, php и т.п , а именно Питон еще многим не знаком, я 2 года тратил на то чтобы найти свой язык, начинал с C++, Java, но потом уже почти как полгода года нравится Питон, так как он именно для веб, я не хочу программировать системные или же приложения для десктопа, а именно веб, но опять же столько технологий и фреймворков, что аш глаза разбегаются, а времени мало чтобы каждому фреймоврку уделять время, и тем более если изучать html5 и js, то следовательно нужно знать и php, поэтому я запутался. С другой стороны , что скоро в армию (в июле), не хочеться терять несколько месяцев в пустую. Я не за то, чтобы защищать свою родину, дело не в этом совсем. У нас свои законы, и другие понятия, но есть один + , то что здесь пока я не видел специалистов по Питону и фреймворков, большинство пхпэшников и системных админов.
Источник: americhka.us
|
|
|
Просмотров: 1025 |
Добавил: acquit
| Рейтинг: 0.0/0 |
| |
 | |  |
|
|