Есть альтернативный подход — разработка через рефакторинг. Т.е. вначале пишется прототип через «дамп потока», потом он анализируется и по его мотивам пишется уже нормальное приложение.
Особенно хорошо этот метод работает вместе с, как ни странно, TDD: после написания прототипа рефакторится его контракт вместе с написанием тестов (не обращая внимание на то, что некоторые тесты будут падать — не исправляя код прототипа), после чего по готовому контракту пишется нормальная программа.
Я тут как раз пытаюсь опровергнуть точку зрения, что с телефона серфить не надо, вместо сайтов будут мобильные приложения для каждого источника контента :)
По поводу первого: вам повезло с аудиторией, у меня совсем другой опыт — пользователи совершенно не стремятся обновлять приложения. Понятно, что, возможно, это просто нам не повезло с аудиторией и наш случай — девиантный по отношению к норме. Но я и не претендовал в посте на объективность, а выражал собственное мнение относительно слабости платформы распространения мобильных приложений.
По поводу второго: это не более, чем вкусовщина создателей сайтов. По хорошему, мобильная вёрстка использует только нативные активные жлементы и не пытается создать свои, а уж тем более замаскировать их под какую-либо интерфейсную парадигму. Если использовать нативные элементы, то одна и та же вёрстка на разных устройствах выглядит в интерфейсной парадигме самого устройства.
Я специально написал в самом начале, что высказанное — это моя точка зрения «против приложений и за мобильный веб», после чего привёл имеющиеся аргументы.
Так что будем считать, что подкреплены ИМХО и профессиональным опытом :)
С подбором гармоничных цветов не всё так просто, необходимо манипулировать ещё и яркостью-насыщенностью — года три назад как раз исследовал триадные наборы для дальтоников :)
Лекция — потому что это — сабскрипт того, что я рассказываю устно. Промышленное программирование — это противоположность программированию спортивному. Промышленное программирование — это вид прикладного программирования, результатом которого являются системы эксплуатируемые в реальном бизнесе. Отличительными особенностями промышленного программирования являются реализация бизнес-требований в согласованные сроки и долгая поддержка сданной в эксплуатацию системы.
Я пытаюсь вам объяснить, что вы вручную дополняете ряд до бесконечного и не отражаете это изменение в программе, после чего заявляете, что программа стала меньше :)
Ещё раз поясню: сама программа продолжает работать с исходными и конечными данными, она не знает, что о том, что можно произвести данное преобразование. По этому это знание необходимо добавить в программу.
Вы уверенны, что входных данных во втором случае стало больше? Именно этот момент я и просил вас пояснить и ответа не услышал.
Ещё раз — был конечный ряд. Мы берём делаем его инвариантное преобразование в бесконечный ряд + указатели откуда и доколе.
Но на вход программы всё ещё продолжает поступать конечный ряд.
Соответственно, в программу добавляется функционал по конвертации конечного ряда в бесконечный + добавляем новая структура данных «бесконечный ряд + указатели откуда и доколе».
Спасибо, учту ваши комментарии в следующей редакции лекции :)
Насчёт узости — задача такая: быстро напомнить джуниорам откуда вообще пошли языки и что стоит за ООП и языками, на которых они пишут (у нас пишут на Java и PHP).
Рассказывать системно и последовательно про историю программирования — это явно более 2х часов времени.
Следующие курсы — это уже тактика и стратегия написания промышленного кода. Максимум практики, минимум теории.
Ещё раз, сколько стоит преобразование из конечного ряда + граничные условия (это исходные даннфе) в бесконечный + исключения (это промежуточный формат данных)?
Особенно хорошо этот метод работает вместе с, как ни странно, TDD: после написания прототипа рефакторится его контракт вместе с написанием тестов (не обращая внимание на то, что некоторые тесты будут падать — не исправляя код прототипа), после чего по готовому контракту пишется нормальная программа.
По поводу второго: это не более, чем вкусовщина создателей сайтов. По хорошему, мобильная вёрстка использует только нативные активные жлементы и не пытается создать свои, а уж тем более замаскировать их под какую-либо интерфейсную парадигму. Если использовать нативные элементы, то одна и та же вёрстка на разных устройствах выглядит в интерфейсной парадигме самого устройства.
Так что будем считать, что подкреплены ИМХО и профессиональным опытом :)
habrahabr.ru/post/60426/
Ещё раз — был конечный ряд. Мы берём делаем его инвариантное преобразование в бесконечный ряд + указатели откуда и доколе.
Но на вход программы всё ещё продолжает поступать конечный ряд.
Соответственно, в программу добавляется функционал по конвертации конечного ряда в бесконечный + добавляем новая структура данных «бесконечный ряд + указатели откуда и доколе».
Я не вижу, где здесь уменьшение функционала?
Насчёт узости — задача такая: быстро напомнить джуниорам откуда вообще пошли языки и что стоит за ООП и языками, на которых они пишут (у нас пишут на Java и PHP).
Рассказывать системно и последовательно про историю программирования — это явно более 2х часов времени.
Следующие курсы — это уже тактика и стратегия написания промышленного кода. Максимум практики, минимум теории.