GD Star Rating
loading...

И опять всем привет.

Я с первых же страниц не полюбил ASP.NET MVC (в частности, из–за творящейся там магии — хотя, говорят, по сравнению со “старым” ASP.NET это ещё ничего).
Кроме магии, сильное неприятие вызывают их View Engine (и ASPX, и Razor); а альтернативные либо такие же страшные, либо неподдерживаемые.
Вообще, я как–то привык генерировать выходной HTML с помощью XSLT, но и у XSLT есть свои минусы — при использовании с ASP.NET MVC терять Intellisense на свойства всё–таки не хочется.

Но зачем использовать все эти ASPX и Razor, если код View можно тупо писать на C#?

Сравните этот код с общепринятым aspx.
Из преимуществ моего варианта вижу какую–никакую, но декларативность (от явных циклов в коде view воротит), чуть меньше магии, возможность выносить отдельные куски шаблонов в отдельные функции (при необходимости, разделяемые между разными View). Из недостатков — только то, что пользователи ASP.NET, ничего другого в жизни не видевшие, не сразу поймут, что тут происходит.

А вы как думаете?

PS: На code style (переводы строк, расстановка скобок и пр.) внимания не обращать, он не мой.

ТИПНУШЕЧКИ ВОЗВРАЩАЮТЬСЯ

image

Админы и сочувствующие посетители hardblog.net посчитали злободневным: блог для начинающих мам

И опять всем привет., 5.0 out of 5 based on 1 rating
Tagged with →  

236 Responses to И опять всем привет.

  1. Gk0nix:

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

  2. Sukon:

    : Причём ни первый, ни второй вариант.

  3. UPnsuper:

    : Вроде бы, как раз общепринят второй вариант (aspx)? Если и он считается говном – то как же делают вьюхи в ASP.NET MVC риальные пацаны?

    А первый вариант даёт возможность вполне нормального code reuse, на уровне гораздо более удобном, чем partial views (хотя, может, я просто не умею их готовить).

    PS: А XSLT, по-вашему, тоже не читаем?

  4. 0duaTa:

    LINQ to XML еще куда ни шел, когда надо разбирать дерево, но собирать с его помощью вьюху — этопездец.

    Не нравится ASP.NET MVC — смотри альтернативы 1, 2, 3. Беспокоит магия — прочитай книжку Дино Эспозито. Хочешь XSLT движок для вьюх — такая есть в MVCContrib.

    С другой стороны, в чем проблема сгенерить разметку из XSLT и отправить ее с помощью Response.Write обычным хендлером?

  5. UPnsuper:

    :
    > LINQ to XML еще куда ни шел, когда надо разбирать дерево, но собирать с его помощью вьюху — этопездец.

    XElement как раз и предназначены, в частности, для удобного формирования документа.
    Мне пришёл в голову только такой способ делать что-то XSLT-подобное с поддержкой intellisense.

    > Не нравится ASP.NET MVC — смотри альтернативы 1, 2, 3.

    Меня тошнит от ASP.NET MVC, я засыпаю с ненавистью к ASP.NET MVC, просыпаюсь по ночам со рвотой от ASP.NET MVC, просыпаюсь утром с ненавистью к ASP.NET MVC – но, увы, в данном случае не я выбираю средства.
    А когда выбор средств за мной – я и так знаю, как можно сделать веб-приложение, у меня они есть 🙂

    > Беспокоит магия — прочитай книжку Дино Эспозито.

    Если я прочитаю книжку о том, как устроена магия, она перестанет быть магией?
    Я после трёх с половиной лет работы над огромным проектом, написанном в полном соответствии с заветами Фаулера, но на PHP, просто не могу смотреть, когда где-то что-то нестрого. Детские комплексы, да.

    > Хочешь XSLT движок для вьюх — такая есть в MVCContrib.

    См. исходный пост:
    > альтернативные либо такие же страшные, либо неподдерживаемые

    Этот проект я делаю не “для души”, а на тот XSLT-движок мне даже примеров использования найти не удалось, не говоря уж о нормальной документации.

    > С другой стороны, в чем проблема сгенерить разметку из XSLT и отправить ее с помощью Response.Write обычным хендлером?

    Т.е. ручками с помощью reflection заворачивать ViewData в XML, а потом в XSLT разбирать без всяких этих IntelliSense? Боюсь, коллеги меня неправильно поймут.

  6. 0duaTa:

    : ебанулась, извини, был напуган.

  7. 0duaTa:

    : > Т.е. ручками с помощью reflection заворачивать ViewData в XML, а потом в XSLT разбирать без всяких этих IntelliSense?

    Да ты СОВСЕМ ЕБАНУЛСЯ??! Это вот так вы на PHP писали по Фаулеру чтоли?

  8. Lagapp:

    > Но зачем использовать все эти ASPX и Razor, если код View можно тупо писать на C#?

    А верстальщики твои уже освоили C#?

  9. UPnsuper:

    : Так я не про PHP вроде, а про ручное применение XSLT в ASP.NET MVC.
    Я с ASP.NET MVC знаком только неделю, но не вижу, как ещё можно “сгенерить разметку из XSLT и отправить ее с помощью Response.Write обычным хендлером”, пользуясь при этом всеми фишками, предоставляемыми ViewData (т.е. чтобы не писали, по сути, свой MVC).

  10. UPnsuper:

    :
    1) Отдельных верстальщиков, подгонкой пикселей занимаются те же программисты C# (да, это ужасно).
    2) Я не уверен, что верстальщику не понадобится ничего осваивать, чтобы произвести такой код.

  11. UPnsuper:

    : *Отдельных верстальщиков в компании нет

  12. Sukon:

    : Да, XSLT еще более нечитаем.

  13. REZmo:

    По своей сути html css и javascript – ужасные технологии.
    Идея благая, а всё остальное, от реализации, до средств разработки – ужасное.
    В силу этого, не стоит обращать внимание на говнистость технологии, одной из основных целей которой является генерация кучи кое чего из указанных выше.

    И в коде твоём кроме декларативности нифига нет.
    Общую картину документа ты как увидишь на этапе программирования?

    только xaml!!!111 только хардкор!!11

  14. Aklre:

    : о, прикольно я дино эспозито рука здоровался. клёвый мужик, кстати.

  15. Aklre:

    : если я напишу такой код, как во втором примере – мне будет нужно отгрызть себе руки по локоть.
    во-первых, если есть возможность, то только razor, asp-мотор микрософты прикрутили бо тупо не успевали.
    во-вторых использовать нетипизированный viewData – это ж даже и не нужно. всё должно быть в модели.
    в третьих я понимаю, что для примера нужен полный хтмл, но либо у сайта одна страница либо иерархические шаблоны.

  16. Sukon:

    : http://news.ycombinator.com/item?id=2300…

    ужасные технологии еще захватят мир! если ты будешь кликать, конечно.

  17. REZmo:

    : Результаты вычисления одной и той же функции на языке разметки в разных браузерах будут разными 🙂
    А так, чо, пусть захватывает – альтернативы они всё равно будут.

  18. LanTunes:

    : напиши мне в пост, когда веб чуть более чем на половину переедет на xaml разметку и я вернусь в веб разработчики! 8)

  19. UPnsuper:

    :
    > во–первых, если есть возможность, то только razor

    В интернетах, вроде, небезосновательно полагают, что при написании мало-мальски сложного кода (хотя бы со вставками JS) это превратится в полный нечитаемый и неподдерживаемый пиздец.
    Код посреди HTML – само по себе плохо. Код, который ещё и чётко и не отделить от остального HTML/JS – пиздец.

  20. UPnsuper:

    : Зря ты так.

  21. UPnsuper:

    :
    > По своей сути html css и javascript — ужасные технологии.

    Javascript-то тебе чем не угодил? На нём серьёзные дядьки даже сервера пишут!
    Ну и про HTML ты зря так, надо просто понимать, что это – не язык программирования, а язык разметки.

    > И в коде твоём кроме декларативности нифига нет.

    Возможность code reuse ещё – ну как и в xslt.
    А в aspx, я так понимаю, из всего code reuse – только partial views. В Razor ещё добавляются функции, но их можно использовать только в той вьюхе, где они определены.

  22. UPnsuper:

    :
    > Общую картину документа ты как увидишь на этапе программирования?

    В смысле?

  23. 0duaTa:

    : хуйня это все

  24. Sukon:

    : Я вполне серъезно.

  25. Aklre:

    : жэйваскрипт посреди хатээмэля — это тоже вообще-то пиздеу. Точно так же пиздец когда в классическом асп проще было маркап из кода генерить. Я завёл себе правила: все данные готовятся в модели, в рейзоре избегать условий и по возможности циклов. Жаваскрипт всегда в отдельных файлах. Как-либо так

  26. UPnsuper:

    : И как можно избегать циклов, когда нужно вывести список данных? Тут уж либо преобразования (которых в razor нет, и которые я хотел бы получить), либо циклы.

  27. UPnsuper:

    :
    > жэйваскрипт посреди хатээмэля — это тоже вообще–то пиздеу

    Отлично, теперь у нас два конфликтующих пиздеца посреди хатээмэля.

    > Жаваскрипт всегда в отдельных файлах.

    По ссылкам проблемы возникают, когда хочется передать данные из razor в javascript.

  28. Aklre:

    : никак. но например вместо спагетти из сишарпа и хатээмэля можно использовать цикл с вызовом partial и там внутри уже просто вставлять значения из подмодели цикла.

  29. Aklre:

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

    вот и цикла в рейзоре избежали

  30. UPnsuper:

    :
    > цикл с вызовом partial

    Насколько я понимаю, partial – слабое подобие шаблонов XSLT, с обязательным требованием вынесения в отдельный файл?

  31. UPnsuper:

    :
    > маркеры готовишь в контроллере, пакуешь в жейсон

    То есть, в контроллере надо знать о том, каким образом будут использованы данные? Отличное разделение MVC!
    А если в другом представлении (для мобильников, скажем) надо выдавать то же самое, но явно, а не через JS?

    > цикл кстати, переносится из разора в модель и жаваскрипт — вполне подходящие для этого места.

    Можно ещё циклы по генерации HTML перести из разора в модель… OH SHI–

  32. Sukon:

    : Это скорее как рельсовый паршл – просто кусок разметки вынесенный в отдельный файл. Чтобы его можно было включать где надо.

  33. Lagapp:

    : > Javascript–то тебе чем не угодил? На нём серьёзные дядьки даже сервера пишут!

    Как раз наоборот, на нём пишут сервера фронтендщики. Читал тут недавно сорцы одного такого, гхм, сервера.

  34. Gk0nix:

    : ерунда, вроде, какая-то
    Почему нельзя хелперы статические с js сделать и дергать из вьюхи функции, передавая в них сгенеренный json

  35. Zzzer:

    : подожди-подожди код в aspx общепринятая практика? нас даже в универе за это пиздили и говорили переделывать

  36. LanTunes:

    : повторное использование кода в asp.net делается иначе, например вот так. Тут сам подход компонентный нужно применять.

  37. Arbam:

    Давайте немного переключимся с , и пообсуждаем View Engines для ASP.NET MVC3, +/ — (использования, и где начинается анальная боль, и фикальное братство?). А именно нравится Spark(ни разу не юзал http://sparkviewengine.com/), с его подобием JSTL тегов. Ибо мне, например, тоже слегка не нравится иметь смесь C#/VB кода и html, а больше нравится однородная солянка. Вам как?

    Ну и да считаю что xslt должен остаться в прошлом, прошли дни xml–я, поэтому для этой сладкой парочки остается только генерение репортов и простейших текстов, ну а более сложные вещи на мощных template engines/view engines.

    Для поведай нам как ты ебашил ui на xslt, насколько он был сложным.

  38. Aklre:

    : судя по всему ебашила

  39. Aklre:

    : подозрителен вьюэнжын сайт для которого сделан на друпале…

  40. Aklre:

    : чорт. а неужели мы не можем придумать так, чтоб бляди отдельно, а водка отдельно?

  41. Aklre:

    : мне кажется сдесь не хватает ещё одного моего комментария…

  42. Aklre:

    : это я к тому, что проблема в том, что либо дизайнеры должны слегка понимать серверный код, либо программеры получают вёрстку и внедряют в неё код. то есть что так, что сяк получаются спагетти и либо мы получаем правильный html (всё-таки код в кавычках – это немного диковато, как по мне), либо тренируем глаз отличать где что.

    должна ж быть какая-то идея, как слои в графическом редакторе. каждый слой – своя функция, вместе – нужный результат.

  43. Aklre:

    : то есть вот лифт. они декларируют “этот тег будет обдрачивать такой-то класс”, то есть дизайнеру прийдётся объяснять, что вот эти вот аттрибуты стирать не надо, а если поменял вёрстку и что-то с такими аттрибутами удалил – скажи мне.

    я не против разговаривать с дизайнерами.

    как бы вообще без этой мешанины? чтоб взять чистую разметку к ней как-то приклеить код и потом менять обоих независимо?

  44. Sukon:

    : Судя по всему, ебашил.

  45. Sukon:

    > и фикальное братство
    Написал [50096],

    ПОСМОТРИТЕ! ОТКРОВЕННО НЕГРАМОТНЫЕ ЛЮДИ В ПРАВИТЕЛЬСТВЕ! ДОКОЛЕ, ЛОШАТЬ ТЫ БУДЕШЬ РАЗРЕШАТЬ ПОДОБНЫЙ БЕСПРЕДЕЛ?

  46. Arbam:

    : либо верстальщики учат javascript, и с сервака раздается статический контент, а уже ui строится на клиенте за счет того что данные тащатся через вызовы ws, но тогда получаем еще больше запросов на сервер.

  47. Aklre:

    : и неиндексируемый сайт. не.

  48. Arbam:

    : ?-кальное=1,618-кальное братство!
    resu-Errection, Cabbage collecting, O(N)

  49. Sukon:

    : Ты уже практически достучался!

  50. Aklre:

    : у меня тоже такое впечатление, но если на клетке с буйволом написано слон – не верь глазам своим.

  51. REZmo:

    : Ну вот я открываю aspx файл, и прям почти представляю себе как выглядит конечный документ.
    Открываю я xaml, тоже представляю.
    А открываю я твой код, и ничего не представляю.
    (не будем брать в расчёт тот круг задач, где структура документа генерируется на этапе исполнения программы)

  52. REZmo:

    :
    Javascript–то тебе чем не угодил? На нём серьёзные дядьки даже сервера пишут!
    Всё просто. Он неудобный. Он неудобный из-за того, что для него нет нормальных средств разработки.
    Но даже если бы и были, он всё равно неудобный.

    Ну и про HTML ты зря так, надо просто понимать, что это — не язык программирования, а язык разметки.
    Ага, расскажи это тем дядькам, которые придумали html5, что это всего лишь язык разметки.
    Я считаю, что если язык, возведённый в ранг стандарта, по разному работает в разных средах, то это говно.

  53. UPnsuper:

    :
    > Почему нельзя хелперы статические с js сделать и дергать из вьюхи функции, передавая в них сгенеренный json

    Потому что кто будет заниматься генерацией json? Контроллер?

  54. UPnsuper:

    : А чем, по-твоему, является содержимое файлов.aspx (даже если в них нет ни единого тэга asp), как не кодом?

  55. UPnsuper:

    : Я тут недавно смотрел на цены на Azure, и клиентов Azure я не могу не назвать серьёзными дядьками. А Node.js – один из основных фреймворков для Azure.

  56. UPnsuper:

    :
    > Всё просто. Он неудобный. Он неудобный из–за того, что для него нет нормальных средств разработки.
    > Но даже если бы и были, он всё равно неудобный.

    Насчёт средств разработки не в курсе, большие вещи на JS никогда не писал.
    Но всё-таки, что именно в нём неудобного?

  57. UPnsuper:

    :
    > Ага, расскажи это тем дядькам, которые придумали html5, что это всего лишь язык разметки.

    Так там вроде как раз всё идёт в сторону того, чтобы люди использовали разметку, а не миллионы css-стилей и миллиарды джаваскриптов.

  58. UPnsuper:

    :
    > А именно нравится Spark(ни разу не юзал http://sparkviewengine.com/), с его подобием JSTL тегов. Ибо мне, например, тоже слегка не нравится иметь смесь C#/VB кода и html, а больше нравится однородная солянка. Вам как?

    Да, это один из поддерживаемых, но страшных view engine-ов.
    ИМХО, достаточно одного взгляда на главную, чтобы понять, что это пиздец. Уж лучше смесь C# и html (где чётко понятно, где html, а где C#, и как оно работает), чем вот такой трэшак:

    ${p.Name}
    l>

    No products available

    Не говоря уж о дисбалансе скобок – уж лучше бы написали, например

    ${p.Name}
    l>
    No products available

  59. UPnsuper:

    :
    > прошли дни xml–я

    Смотрим в исходники этой страницы – а там, о чудо, <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-s&#133;“>
    Ты как-нибудь поконкретнее давай.

    > Для поведай нам как ты ебашил ui на xslt, насколько он был сложным.

    Достаточно сложным. Например, весь http://forum.hn/ работает на XSLT. Да, кучи джаваскрипта с аяксом там нет, но это не из-за XSLT, а из-за того, что руки не дошли.
    Впрочем, UI на XSLT – это так, мелочи по сравнению с преобразованием данных на XSLT.

  60. Aklre:

    : чувак, если ты так любишь XSLT вот для тебя идеальный MVC: контроллер генерирует модель и сериализирует её в XML, представление берёт этот XML и трансформирует его в куда хочет.

    если чуть помутить, то контроллер может просто выдавать модель, потом прослойка сериализирует в ыксымель, потом твой вьюэнжын генерит что хочет.

    вперёд. человечество тебя не забудет.

  61. UPnsuper:

    : Так это уже обсуждалось тут. Останавливают две вещи:
    1) Нужно сериализовать модель в XML.
    2) В XSLT не будет работать intellisense по модели.

    А в остальном – да, именно это и хотелось бы получить 🙂

  62. UPnsuper:

    : А без видео?

  63. Sukon:

    : Я не нанимался тебе контексты писать. Посмотри и узнаешь.

  64. Aklre:

    :
    1. вот уж придумал сложность сериализовать модель. это вполне может быть частью мотора представления, контроллер не должен об этом знать
    2. интеллисенс в студии очень можно настраивать. если есть настройки для jquery, то можешь сделать и себе. в крайнем случае плагин.

  65. REZmo:

    : Можно поподробнее про основных фреймворков для Azure.. Что-то я не видел задач, которые нельзя бы было решить на azure без node.js, и тем более, что он позиционируется как основной фреймворк.

  66. LanTunes:

    : в смысле кнопочку split нажми как-нибудь при редактировании aspx файла. Удобно иногда.

  67. REZmo:

    : Можно и без сплит. Всё одно структура легче представляется, если смотришь на aspx, нежели на генерацию в c#.

  68. Lagapp:

    : Выбирать технологию исходя из того, будет ли для неё работать intellisense — это, извините, совсему уже как-то ммм… дотнетно.

  69. LanTunes:

    : конечно, но так нагляднее 🙂

  70. REZmo:

    : Начинай писать код в vi. Выбирать редактор по удобству и присутствию/отсутствию возможности валидации или компиляции кода, это знаешь ли, как-то… НЕ ХАРДКОР!!!111

  71. Lagapp:

    : Знаю кучу людей пишущих в vi, сам всё чаще использую sublime вместо IDEA. Ну и вообще не путай выбор твоего личного инструмента (редактора) с выбором технологии для проекта.

  72. Zzzer:

    : ты vi и vim не путаешь? 🙂

  73. Xibin:

    http://pastebin.com/A85bep6U – удобно для генерации всяких админок и прочего, где всё равно на дизайн, главное – быстро и автоматически.

    http://pastebin.com/ascWgzzQ – нормально для сайтов, дизайн которых делает дизайнер и верстает верстальщик.

    соответственно оба подхода применимы к разным задачам и не надо их сравнивать.

    срач не читал, но все кто выше и ниже дураки.

  74. REZmo:

    : Ок. Только я считаю, что язык программирования – это не только задача, решаемая этим языком. Но и удобство его использования, на что влияют как раз IDE и прочие околоязыковые инструменты.
    А личное удобство каждого программиста – это деньги проекта.
    Так что подход мухи отдельно, котлеты отдельно здесь не подходит. Если только это не супеп пупер уникальный язык/технология, альтернативы которому, с более удобными инструментами – нет.

  75. UPnsuper:

    : Фреймворков, языков, платформ – видимо, я как-то не так выражаюсь.
    Суть в том, что Azure-приложения можно писать на C#, Java, Node.js итд; Node.js, вроде как – один из основных вариантов.

  76. UPnsuper:

    : А, так ты про это…
    Имхо – хуйня полнейшая. В любом случае, другие разработчики в компании тоже ей не пользуются (а пользовались бы – я бы тут и не спрашивал).

  77. UPnsuper:

    :
    > интеллисенс в студии очень можно настраивать.

    И как сделать, чтобы в XSLT работал интеллисенс по модели входного XML-файла (пусть даже соответствующего XSD).

  78. UPnsuper:

    : Вы к нам из какого года?

  79. UPnsuper:

    ОК, вот реальный пример рабочего проекта: https://gist.github.com/b4339b404eaf8be2&#133;
    Никаких затруднений при написании не испытывал, модификации происходят очень быстро (если не учитывать необходимость реализации всех этих Html.XCreateTable, но это делается только один раз).
    Даже такое примитивное представление на ASPX выглядело бы ужасно; мне даже не хочется представлять, как я это писал бы на ASPX.

  80. LanTunes:

    : может они еще и про Master pages не слыхали?

  81. LanTunes:

    : ну хуй знает.. Как по мне – это тупое копирование еще раз отражения DOM-а от asp.net. Более того, подозреваю, что без соответствующего отражения в apsx-е. Перестаньте делать php из asp.net там вообще другие концепции для построения используются.

  82. UPnsuper:

    : ОК, у меня в модели есть IEnumerable каких-то однотипных объектов, есть преобразование этих объектов в ряды таблицы. Что мне сделать, чтобы получить соответствующую таблицу?
    Сейчас у меня это делается одной строчкой – Html.XCreateTable(Data.Select(Transforme r)). Реализация XCreateTable тоже предельно тупая. Практически все вспомогательные методы (все, за исключением XMultiline) реализуются в одну инструкцию return – по сути, чистая функциональщина.
    А по твоей ссылке – похоже, пришлось бы императивщины разводить на полстраницы.

  83. REZmo:

    : Ты очень сильно ошибаешься про основной вариант (и вообще про его наличие).

  84. Zzzer:

    : наверное это можно сделать через колдовство с DataSource 😉

  85. UPnsuper:

    : Ага, знаем, маппинг datatable на аспшную таблицу… только какое это отношение имеет к моему желанию построить таблицу по имеющимся объектам?

  86. Zzzer:

    : емнип, то необязательно datatable, вроде должно и контейнеры хавать.

  87. LanTunes:

    : я думаю, что стоит взглянуть в метод Data.Select и переделать его так чтобы table.Rows = Data.Select(бла бла бла) не было ошибочным выражением.. Вы просто дублируете функциональность на свой лад, при чем теряя многие удобные вещи, уже существующие в базовом комплекте asp.net.

  88. LanTunes:

    : нет-нет, тут все гораздо проще. Это же Table а не GridView. Волшабства достаточно даже тут.

  89. UPnsuper:

    : Так можно мне уже пример кода, создающего таблицу?
    Я ещё раз напомню, у меня таблица создаётся как-то так, а за её создание отвечают эти методы.

  90. LanTunes:

    : да лишь бы на здоровье. Обычно, когда чего-то не понимаешь, то придумываешь свое. В данном случае, мне кажется, это было напрасно. Пример есть в приведенной мною выше ссылке на msdn.

  91. UPnsuper:

    : Там несколько примеров, и все говно – хочется понять, какой именно вы предлагаете в качестве альтернативы.

  92. UPnsuper:

    : Ах да, и совсем забыл – вроде его можно использовать только в классическом asp.net. У нас-то речь об asp.net mvc, который, вроде как, к asp.net относится только названием.

  93. UPnsuper:

    : Если что, я в этом ни в зуб ногой, asp.net mvc впервые увидел с близкого расстояния на прошлой неделе, а asp.net с близкого не видел вообще.

  94. UPnsuper:

    : Так на какой из примеров смотреть-то?

  95. LanTunes:

    : от ты надоелл… “The following code example demonstrates how to construct a table programmatically.” найти сумеешь? Или на русский переключись если ваще пиздец совсем и найди строку “В следующем примере кода демонстрируется построение таблицы программным методом.”

  96. LanTunes:

    : ну так нахрена спорить и рассуждать о том в чем нихрена не понимаешь?

  97. UPnsuper:

    :
    > “The following code example demonstrates how to construct a table programmatically.” найти сумеешь?

    Конечно. Твой сарказм непонятен, потому что это не единственный пример на той странице.

    ОК, значит, нам нужно иметь классическую asp-страницу; на ней создать элемент asp:table с runat=server, а в C#-коде императивно и через жопу насоздавать рядов, насоздавать ячеек, надобавлять ячейки к рядам, надобавлять ряды к таблице. Охеренная альтернатива моему коду, да.

  98. UPnsuper:

    : Так я говорю, что именно знаю по этому вопросу, и честно признаю, что мои знания не абсолютны.

    Так что там, можно в ASP.NET MVC создавать таблички с runat=server? И это действительно считается хорошей практикой?

  99. LanTunes:

    : скажи, чем этот пример отличается от твоего варианта построения таблицы, не считая других названий классов, методов и того момента, что в твоем “MVC” напрочь отсутствует view?

  100. UPnsuper:

    : Императивностью с циклами и сайд-эффектами (что отлично сочетается с представлением). И тем, что таблица определяется в одном месте, а заполняется в другом. Ну и runat=”server”, конечно.

    > и того момента, что в твоем “MVC” напрочь отсутствует view?

    Я не понял, почему ты класс, в который приходит модель для отображения, и который отдаёт браузеру готовую html-страничку по этой модели, не хочешь называть view?

  101. LanTunes:

    : потому что это не view, а контроллер. Отдай свой код на редизайн верстальщику Пупкину, поймешь о чем речь. У меня все. А про циклы я писал выше Table.Rows=collection решает.

  102. UPnsuper:

    :
    > потому что это не view, а контроллер.

    Это не контроллер, а view.

    > А про циклы я писал выше Table.Rows=collection решает.

    Table.Rows = collection?

  103. LanTunes:

    : слушай, а покажи контроллер, а?

  104. UPnsuper:

    : Ну там сейчас особо ничего интересного нет, т.к. и проект пока что очень мелкий.
    https://gist.github.com/514f2676c8c8af57&#133;

  105. 0duaTa:

    : ты ебанутый

  106. 0duaTa:

    : вроде блять! Ты вообще в каком мире живешь?

  107. 0duaTa:

    : можно. Нет, не считается.

  108. 0duaTa:

    : > У нас–то речь об asp.net mvc, который, вроде как, к asp.net относится только названием.

    это полная хуйня, я даже не буду объяснять почему, раз ты это не смог узнать от более надежных источников

  109. UPnsuper:

    : Ну хоть не считается, и то хорошо.

  110. UPnsuper:

    : Слющай, дарагой, мне вручили молоток с бойком из говна, и заставили им забивать гвозди. Я только вторую неделю работаю с этим херовым молотком, а теперь ты меня обвиняешь в том, что я не узнал от авторитетных источников, что там и ручка из говна, а дерево только сверху.

    Я вообще обычно нормальными инструментами пользуюсь, а не из говна. Инструменты из говна меня не интересуют настолько, чтобы изучать, где там ещё можно говна найти.

  111. UPnsuper:

    : И в чём же проявляется ебанутость?
    Нет, серьёзно – разве есть смысл пользоваться azure, если ты за сервер собираешься отдавать меньше нескольких тысяч евро в месяц?

  112. LanTunes:

    : то есть выходит, что у тебя и контроллер и вью пишутся на c#? У вас ахуенно крутые дизайнеры, я вам доложу!

  113. LanTunes:

    : повторюсь – не делай из asp.net PHP 🙂

  114. UPnsuper:

    : А на чём ещё писать контроллер, на F#?
    А тому, на чём писать вью, и посвящён этот пост.

    Отдельных верстальщиков в компании нет.

  115. UPnsuper:

    : Не делать из говна говно?

  116. Akref:

    : ага, кстати планируешь детей заводить?

  117. UPnsuper:

    : А зачем этому контроллеру дети?

  118. REZmo:

    : Тем более, если не используешь node.js.

  119. 0duaTa:

    : без интелисенса!!1

  120. 0duaTa:

    : тут все уже поняли, что это говно, что ты только две недели в нем плаваешь, утираем слезки и сочуствуем тебе. Но может быть, вместо того, чтобы размазывать сопли по бровям и пороть хуйню, ты уже пойдешь, и изучишь то, с чем работаешь?

  121. UPnsuper:

    : “Вроде бы, ХХХ верно?” – “Ты нихуя не понимаешь, не размазывай сопли по бровям, не пори хуйню, изучай то, с чем работаешь!”
    Конкретики бы. Тем более, что речь идёт о довольно эзотеричных вещах (пользуемся ASP.NET MVC с WebForms), не упоминающихся в книжках вроде того же Сандерсона. Тем более, что всё равно, как тут уже сказали, это явно не считается хорошей практикой (и тогда уже становится не так важно, осуществимо это технически или нет).

  122. UPnsuper:

    : Давай попробуем разобраться по пунктам.
    1) Есть ли корреляция между “X пользуется Azure” и “X – реальные пацаны”?

  123. REZmo:

    : Понятия не имею. Но azure определённо очень крутой сервис.

  124. UPnsuper:

    : ОК, идём дальше.
    2) Верно ли, что Node.js – одна из четырёх платформ, официально рекомендуемых MS для разработки Azure-приложений?

  125. LanTunes:

    : как для тебя лично – всё равно :)))) ты и из node сделаешь похапэ..

  126. UPnsuper:

    : Где ты похапе-то увидел?

  127. REZmo:

    : нет, не верно.

  128. UPnsuper:

    : Странно, а здесь удостоились чести быть отнесёнными не к категории Other только.NET, Node.js, Java и PHP.

  129. UPnsuper:

    : Вот, кстати, тебе ещё один чуть более содержательный примерчик говнокода: Controller, View.

    Что, и тут по второй ссылке контроллер?

  130. KoZlo:

    : идиотская семантика в нем неудобная

  131. UPnsuper:

    : s/неудобная/непривычная/

  132. REZmo:

    : Я не вижу слово “рекомендованные”.
    Знаешь, когда какая-то технология становится популярной, то очень выгодно, имея облачный хостинг, сказать: “чуваки, а мы это поддерживаем”, и написать quick start.
    И категории other для azure тоже нет.
    Ты в каком-то своём мирке воображаешь.

  133. UPnsuper:

    :
    > Я не вижу слово “рекомендованные”.

    ОК.

    > Знаешь, когда какая–то технология становится популярной, то очень выгодно, имея облачный хостинг, сказать: “чуваки, а мы это поддерживаем”

    То есть, хотя бы популярность ты не отрицаешь?

    > И категории other для azure тоже нет.

    http://www.windowsazure.com/en-us/develo&#133;

    Image #1360651, 6.8 KB

    http://www.windowsazure.com/en-us/develo&#133;

    Image #1360654, 41.4 KB

  134. UPnsuper:

    : Добавлю.
    > Знаешь, когда какая–то технология становится популярной, то очень выгодно, имея облачный хостинг, сказать: “чуваки, а мы это поддерживаем”, и написать quick start.

    Не просто quick start, а целую библиотеку для этой технологии, добавляющую туда поддержку своего облачного хостинга (в первую очередь – работу с облачными хранилищами): https://github.com/WindowsAzure/azure-sd&#133;

  135. REZmo:

    : Да хоть три библиотеки и десять sdk (было бы странно, если бы их не было).

    Но это всё не отменяет того, что ява скрипт – гавно.

    Я нить потерял, ты сейчас что пытаешься доказать?

  136. KoZlo:

    : нет, неудобная. для меня уже очень привычная, я по некоей идитской причине много курил стандарты жс

  137. UPnsuper:

    : ОК, что неудобного в семантике?

  138. UPnsuper:

    :
    > Да хоть три библиотеки и десять sdk (было бы странно, если бы их не было).

    Ну так для платформ, не входящих в этот список, “интегрированных” библиотек/sdk нет, всё будешь писать ручками.

    > Я нить потерял, ты сейчас что пытаешься доказать?

    Даже по твоей логике, ((Node.js входит в список) И (Python не входит в список)) => (Node.js более популярен среди пользователей Azure, чем Python).
    Кроме того, ты, вроде бы, и не спорил с тем, что Azure в основном пользуются только серьёзные люди на серьёзных проектах, где ежемесячная плата за Azure-хостинг измеряется десятками тысяч долларов.
    Отсюда вывод – серьёзные люди чаще пользуются Node.js, чем, например, Python, Ruby, Erlang…

  139. REZmo:

    : Плохой вывод, очень плохой. И в части того, что облачный хостинг в основном только для очень крупных проектов, и о том, что node.js чаще используют серьёзные дядьки, и как следствие, что node.js чаще используют только из-за того, что для него есть sdk в azure, и чаще используют чем питон руби, и чаще используют именно серьёзные люди и прочее и по кругу еще раз.

    Ты идёшь от следствия.

    И это всё равно не исключает, что ява скрипт – неудобный язык, а по моему мнению – гавно.

    Давай еще раз – я так и не понял, чего ты хочешь доказать, развязав эту всю полемику? Выдай нам одну ёмкую фразу.

  140. UPnsuper:

    :
    > И в части того, что облачный хостинг в основном только для очень крупных проектов

    Не облачный хостинг вообще, а именно Azure.
    Например, в Hetzner можно арендовать выделенный сервер с виндой за 55 евро в месяц. Это четырёхядерный sandy bridge 3.4ггц, 16ГБ памяти, 3ТБ винчестер (в рейде), 10ТБ трафика на 100мбпс (после исчерпания до конца месяца – 10мбпс или 6 евро за дополнительный ТБ).
    Что я могу позволить себе за эти деньги в Azure? Одну extra-small computing instance (1ГГЦ, 768МБ, 20ГБ); пару сотен гигабайт трафика; никакого облачного хранилища.

    В чём смысл хостинга в Azure при затратах меньше тысяч долларов в месяц? В чём преимущество перед парочкой самых дешёвых выделенных серверов?

    > node.js чаще используют только из–за того, что для него есть sdk в azure

    У меня был обратный вывод. Наличие sdk для node.js в azure – показатель того, что среди клиентов azure популярен node.js (в отличие от, скажем, python).

    > И это всё равно не исключает, что ява скрипт — неудобный язык, а по моему мнению — гавно.

    Я вполне допускаю, что я ошибаюсь, и JS – действительно говно. Но, может быть, мне всё-таки посчастливится услышать, почему JS – говно?

    > Давай еще раз — я так и не понял, чего ты хочешь доказать, развязав эту всю полемику? Выдай нам одну ёмкую фразу.

    Эээ… с чего полемика-то началась, помнишь?
    Javascript–то тебе чем не угодил?

    Написала , 24.01.2012 в 20.53 | ответить ?.

    Ответа на вопрос я так и не получил, увы.

  141. LanTunes:

    : все что ты показываешь и пишешь – жалкое подобие стандартных средств asp.net, а если бы в вашей лавке работал хоть один въебдизайнер, то скорее всего он бы убил тебя дня через два “совместной работы”, ну или ты его, в зависимости от того, пришлось бы его пересаживать из фотошопа в студию или тебя из студии в фотошоп. Успехов!

  142. UPnsuper:

    : Да, и ещё, если говорить о ценах.
    Я арендую старый (новые в пару раз мощнее) сервер в Hetzner для своего проекта, “на вырост”; возможности этого сервера я использую хорошо если на 10%. При текущей нагрузке, в Azure я отдавал бы за то же самое, навскидку, около 600 баксов в месяц (если я правильно понимаю, что там означают все эти параметры в конфигураторе). Если же нагрузка вырастет на порядок – в Hetzner сервер будет уже не простаивать, а заниматься делом за те же деньги; в Azure же мне придётся платить уже под две тысячи долларов.

    Может быть, я действительно чего-то не понимаю, и даже для маленьких проектов, для которых с лихвой хватает мощности копеечного выделенного сервера, выгоднее Azure? Или для крупных проектов Azure при тратах меньше тысячи долларов в месяц даёт количество одновременных пользователей больше, а время отклика меньше, чем пара копеечных выделенных серверов?

  143. UPnsuper:

    :
    > а если бы в вашей лавке работал хоть один въебдизайнер

    А если бы у бабушки был хуй…
    Очевидно, что, если бы в этой лавке работали выделенные вебдизайнеры, я бы такие вопросы не задавал. В том комментарии, на который ты отвечал – вообще код из моего частного проекта, на котором в обозримом будущем никаких дополнительных разработчиков/дизайнеров, кроме меня, не предвидится. Тем не менее,

    > пришлось бы его пересаживать из фотошопа в студию или тебя из студии в фотошоп.

    такое ощущение, что в твоём фотошопе есть фича “сохранить как html”.

    > все что ты показываешь и пишешь — жалкое подобие стандартных средств asp.net

    Если ты о том, что там своя прослойка для работы с БД вместо linq-to-sql, то ещё можно согласиться (хотя там были причины сделать именно так, а не иначе), хоть это и не относится к asp.net.
    Если о своей реализации маршрутов – то не соглашусь, в реализации от asp.net слишком много магии.
    Где там ещё “жалкие подобия”?

    Но интересно было даже не это, а то, согласишься ли ты с тем, что по первой ссылке контроллер, а по второй – вью.

  144. REZmo:

    :
    Мда.
    У меня small instanse, чтобы получить то, что мне никогда не даст хетцер за такие же деньги – 100% uptime. Ежемесячный ценник конечно выходит за рамки хостинга с высокими ценами, но не сильно (хотя реальных денег я еще не платил, так как пакет, который использую получил по msdn подписке).
    Сравнение дедика с облаком меня посмешило (как по фичам, так и по ценам, особенно то, как ты эти цены считаешь и как эти фичи сравниваешь), спасибо. Мне всегда интересно слушать аргументы людей, которые делают утверждения о вещах, которыми сами никогда не пользовались, а имеют лишь отдалённые теоретические знания.

    На твой вопрос по поводу js тебе тут уже отвечали, но ты конспекта захотел. Погугли, если так интересно, чо. Так же советую решить на нём пару нетривиальных задач, и оценить его не по псевдо выводам о популярности библиотеки в рамках облачного хостинга, написанной на этом языке, а уже с использованием собственного опыта.

    Давай еще раз — я так и не понял, чего ты хочешь доказать, развязав эту всю полемику? Выдай нам одну ёмкую фразу.
    За ёмкую фразу спасибо.

    Удачи!

  145. UPnsuper:

    :
    > У меня small instanse, чтобы получить то, что мне никогда не даст хетцер за такие же деньги — 100% uptime.

    Поэтому я и говорю о двух серверах (которые могут быть у двух хостеров в двух датацентрах).

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

    В этом обсуждении я вижу одну критичную проблему, которая не даёт ему быть хоть сколько-то осмысленным.
    У нас тут две стороны спорщиков. Одна говорит “ну, я в этом не очень разбираюсь, но, вроде бы, справедлив ещё и вот такой факт – а он подтверждает мою позицию; если я неправ – поправьте”. Другая говорит “лол, ну ты посмешил, перестань уже рассуждать о вещах, которыми сам никогда не пользовался”, не говоря при этом совершенно ничего по существу – хотя это её просят сделать на протяжении уже какого количества комментариев.

    Ну это как если к тебе на улице подойдут и спросят “какой час”, а ты им в ответ “ваш вопрос меня посмешил; вы нихуя не разбираетесь в том, о чём говорите”.

    > Погугли, если так интересно, чо.

    “JS – говно! Аргументы? Да погугли, чо”.
    ОК, JS – не говно; за аргументами обращайся в гугл.

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

    Я на нём решал кое-какие задачи, и никакого особенного говна не видел. Но опыт одного человека, конечно же, ничего не значит – поэтому я привёл в качестве дополнительного аргумента ссылку на поддержку Node.js в Azure.
    Ты же говоришь, что заявление об Azure не соответствует действительности – но при этом не осиливаешь сказать, в чём именно. Говоришь, что работал с JS, и что JS говно – но при этом не осиливаешь сказать, в чём именно.

    Вообще, очень хороший фильтр для отсечения пиздоболов – заменяем в их высказываниях предмет обсуждения на любой другой аналогичный (например, Javascript на любой другой язык программирования). Если от этого ничего не меняется – значит, перед нами пиздобол. Если же в результате замены получается что-то вроде “при работе с ассемблером мне очень помогает неявное приведение чисел к строкам” – значит, это хотя бы содержательные утверждения, можно и пообсуждать.

    > Давай еще раз — я так и не понял, чего ты хочешь доказать, развязав эту всю полемику? Выдай нам одну ёмкую фразу.

    Я не согласен с тем, что javascript – говно. Я считаю, что javascript сам по себе, как general-purpose язык программирования – вполне нормален.
    При этом, я допускаю возможность своей неправоты, и готов выслушать все аргументы в пользу обратного (которых тут, увы, пока что ещё не было ни одного).

  146. REZmo:

    : Походу прав был тот плохой строитель из арте каза и пару людей в этом посте – ты ебанутый.

    Ява скрипт как general-purpose язык не гавно, так как его можно использовать в азуре – ок.

  147. UPnsuper:

    : И что же мы имеем в итоге?
    С моей стороны – аргументы в пользу моей позиции, допущение возможности её неправоты.
    С твоей стороны – разведение кидания какашками на сотню комментариев, и ни одного аргумента.

    > ты ебанутый

    NO U

  148. UPnsuper:

    : Да, совсем забыл.

    Ты сам-то текст по своей ссылке прочитал? Что ей сказать хотел-то?

  149. REZmo:

    : Да, почитал конечно.
    Знаешь что, я тебе советую забить на.net, xml и прочую лабуду.
    Давай ка напиши нам библиотеку, server side, на скриптовом языке general-purpose, которая бы без магии и прочей лабуды легко и непринуждённо могла реализовать паттерн mvc используя декларативный подход, но при всём при этом семантика и синтаксис программ, написанных с использованием этой библиотеки без труда при первом взгляде давали нам возможность увидеть общую картину документа, со встроенным в ядро интеллисенсом и двумя контроллерами, тут еще очень много разных фич.
    Тогда твоя библиотека станет популярной, её заметят в микрософте, сделают для неё sdk под azure, и ты еще раз докажешь, что так как ты предполагаешь, что сервера в azure стоят дорого, а значит ими пользуются крутые дядьки, и тем более значит, что если есть sdk под azure, то среди клиентов популярна твоя библиотека, кроме того, так как ты сам используешь старую рухлядь, и предполагаешь, что azure будет дороже и еще очень много аргументов – скриптовой объектно-ориентированный general-purpose язык чрезвычайно удобный, и не говно. Твой начальник это заметит, повысит тебе зарплату и наймёт тебе в помощь верстальщика, чтобы ты больше времени на хуйню не тратил. Ура!!11

    Тоже самое, кстати, можешь сделать на perl, например. Но я не придумал для чего, тут прости.

  150. UPnsuper:

    :
    > Давай ка напиши нам библиотеку, server side, на скриптовом языке general–purpose, которая бы без магии и прочей лабуды легко и непринуждённо могла реализовать паттерн mvc используя декларативный подход, но при всём при этом семантика и синтаксис программ, написанных с использованием этой библиотеки без труда при первом взгляде давали нам возможность увидеть общую картину документа, со встроенным в ядро интеллисенсом и двумя контроллерами, тут еще очень много разных фич.

    Хуясе у тебя бардак в голове.

  151. REZmo:

    : Да конечно, это мне говорит человек, который делает выводы о технологиях, с которыми знаком пару недель.
    Причём каждый комментарий которого – болото, попав в которое один раз, очень тяжело вырваться.

    Или мне надо было весь этот текст красненьким выделить, чтобы до тебя наконец дошло?

  152. UPnsuper:

    : Естественное свойство человека – делать какие-то выводы о том, что он видит вокруг себя. Нормальные люди при этом ещё и допускают возможность неверности своих выводов, и задают вопросы.

    А неадекваты вместо того, чтобы нормально ответить на эти вопросы, начинают орать “да как ты посмел делать выводы, ведь ты только две недели назад это увидел!” – и ничего по существу, ни “верных” выводов, ни аргументов, почему сделанные выводы неверны.

    Совсем же полные неадекваты при этом ещё и не осиливают даже понять, что различные комментарии на различные темы никакого отношения друг к другу не имеют, и сваливают всё в одну кучу, “так ты продаёшь билеты на онлайн-трансляцию slipknot через silverlight, сделанную фрилансером через айпод в фотошопе, лол, ну и дебил“.

    Спасибо тебе за тот комментарий. Я уж было засомневался, а вдруг я действительно нихуя ни в чём не разбираюсь, и вот сейчас мне великие гуру объяснят, как правильно – но тот комментарий поставил всё на свои места, всё-таки я спорю с упоротым дебилом, а не гуру, всё никак не соизволящему снизойти до меня с моими крупицами знаний.

  153. REZmo:

    : Тебе там внизу ведь написали уже, утри сопли, возьми книжку и займись делом!!11

  154. REZmo:

    : Но уж, чтобы отбиться от необоснованного дерьма, я еще раз попробую, но теперь без иронии.
    Смотри какое дело.
    Я считаю, что в корни не верно судить об охуенности технологии, опираясь на её популярность. Думаю меня поддержат в этом многие. Случай с nodejs поистине уникальный – там ребята взяли какашку, и сделали из неё офигенно быструю конфетку (можно я тут вставлю пару шуток про v8? хотя нет, не поймёшь, опять будешь переходить на личности и копаться в грязном белье). Технология стала очень популярной, так как решает ряд специфичных задач, очень требовательных к скорости, легко и просто (не требует длительного обучения) ну и из-за других всяких разных плюшек (можно я не буду тебе тут рассказывать про них, а ты мне не будешь носом тыкать мол где аргументы? эта вся хуйня гуглится ща секунду, для тех, кто не знает). Поэтому разумно было компании микрософт сделать под неё sdk, так как node.js ну прям очень ок для размещения в облаке, ну и кроме того, компания микрософт, акурат после прихода к власти команды html5 и других каких-то дядек прям не перестаёт нас радовать взаимодействием с другими технологиями, языка и прочим.

    Так вот. Разговаривая про javascript, я сказал, что этот язык неудобен, подкрепив это дело аргументом про средства разработки. Конечно это не вся правда, но вот меня понял сразу, да и еще один блогер, сказав про семантику. Есть ряд очевидных вещей, которые разработчики понимают без слов, в частности это очевидные вещи про удобство ява скрипта. Конечно же так думают не все, я даже смею предположить, что моего мнения придерживаются только те, кто в основном пишут на высокоуровневых объектно-ориентированных языках со строгой типизацией и прочей хуетой, которой так не хватает в простом и пиздец как раздражающем ява скрипте. Но хрен бы с этим.

    Резюмируя. В данном конкретном случае, ты, к сожалению, не понял очевидной вещи, более того, вместо того, чтобы привести аргумент пиздатости языка (кроме уникальной nodejs), основываясь на сравнении с другими аналогичными языками, перечислении преимуществ и т.п. ты привёл какой-то аргумент про богатых дядек, которые покупают облачный хостинг, и среди которых вроде как популярен nodejs, именно поэтому, мол, я не прав. Причём, было видно, что сам ты никогда хостингом таким не пользовался, имеешь лишь очень отдалённое понимание того, что это, сколько стоит, как работает, да и так же не совсем понимал, почему же nodejs там стал, как ты выразился, одним из основных фрейворков. Более того, в некоторые реальные аргументы ты стал зарываться как в болото, что даёт еще бОльшую уверенность в том, что тебя серьёзно воспринимать никак нельзя.

    Я посчитал это неправильным. Если я не разбираюсь в чём-то, я не пишу нелепых простыней, указывая в конце, что мол чуваки, а может быть я не прав, мало ли я калькулятор не так понял. В таких случаях я беру литературу и читаю.
    Так же, мои мысли, что ты себя ведёшь не правильно подтвердили твои комментарии про asp.net и asp.net mvc, ты вместо того, чтобы спросить “парни, как этим пользоваться”, стал делать выводы, подкрепляя фразами “вроде как”. На что тебе и ответили, утри сопли, и почитай.

    Ну и финальное.
    Пусть я неадекват, пусть я неправильно сделал, что веселился за твой счёт, пусть я не гуру (которым себя никак не считаю), пусть я продал билеты на слипкнот и обожаю silverlight, но всё то, что тут, и других постах про тебя писали – правда. Знай это.

  155. UPnsuper:

    :
    > Я считаю, что в корни не верно судить об охуенности технологии, опираясь на её популярность.

    Я и не судил об охуенности технологии. Я всего лишь решил поспорить с тем, что “javascript – ужасная технология”. Ссылка на Azure была всего лишь одним из аргументов, приведённым даже скорее в шутку. Напомню, аргументов, подтверждающих “javascript – ужасная технология”, я тут не видел ни одного, всё тут же свелось к срачу на тему “azure и javascript”.

    > Поэтому разумно было компании микрософт сделать под неё sdk, так как node.js ну прям очень ок для размещения в облаке

    Javascript – ок, а python/ruby/erlang – не ок. Но, конечно, это ничего не значит.

    > Разговаривая про javascript, я сказал, что этот язык неудобен, подкрепив это дело аргументом про средства разработки.

    И с этим аргументом я согласен. Вот только исходное утверждение было “javascript – ужасная технология”. А ты, говоря про средства разработки, сказал и “Но даже если бы и были, он всё равно неудобный“, но ушёл от всех дальнейших вопросов по этому поводу.

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

    Ты не поверишь, но я тоже предпочитаю писать на языках со строгой статической типизацией (я так понимаю, ты имел в виду именно это?), и Javascript лично мне неудобен именно этим. Что не мешает мне понимать, что все по-разному относятся ко вкусу фломастеров, и не заявлять огульно “Javascript – говно” или там “Python – говно”.

    > более того, вместо того, чтобы привести аргумент пиздатости языка (кроме уникальной nodejs)

    Я привёл этот аргумент скорее в шутку (извини, тэг айрони там не поставил). Напомню ещё раз, было сделано утверждение “javascript – ужасная технология”; я спросил, на основании чего был сделан такой вывод, добавив при этом (скорее, в шутку) про azure – и вместо ответа получил на сто комментариев вялое обсуждение “ты ничего не понимаешь в Azure”. Хоть к неверно расставленным запятым в предложении не придрались.

    > Если я не разбираюсь в чём–то, я не пишу нелепых простыней, указывая в конце, что мол чуваки, а может быть я не прав, мало ли я калькулятор не так понял.

    Лол, и это при том, что я тут везде пишу “я с этой технологией знаком только пару недель, так что могу и ошибаться, поправьте меня, скажите, как там всё на самом деле”.

    > Так же, мои мысли, что ты себя ведёшь не правильно подтвердили твои комментарии про asp.net и asp.net mvc, ты вместо того, чтобы спросить “парни, как этим пользоваться”, стал делать выводы, подкрепляя фразами “вроде как”. На что тебе и ответили, утри сопли, и почитай.

    – Чуваки, стандартный способ написания представлений ASP.NET MVC, который в книжках, мне не нравится, что думаете о вот таком?
    – Да ты хуйню какую-то написал; например, таблицы можно сгенерить с помощью <asp:table>
    – Как-то это очень некрасиво выглядит; и вроде же в ASP.NET MVC WebForms не поддерживается; а даже если поддерживается – вряд ли поощряется.
    – (вариант 1) Поддерживается, но не поощряется.
    – (вариант 2) Да как ты смеешь делать выводы о технологии, с которой знаком пару недель! Иди читать книжки! И не задавай больше вопросов в блоге! Надо же, WebForms ему в ASP.NET MVC не поддерживаются, не знает, что можно любой код код на классическом ASP.NET назвать “ASP.NET MVC”!

    Я не против обсуждать что-то, когда дискуссия идёт по первому пути. Что касается второго – думаю, тут не я себя неправильно веду.

  156. UPnsuper:

    : А что с ним не так?

  157. REZmo:

    :
    Javascript — ок, а python/ruby/erlang — не ок. Но, конечно, это ничего не значит.
    python/ruby/erlang – ок. Под них есть все необходимые провайдеры для доступа к sql azure. Пусть они написаны не микрософтом, а кого ебёт технология, вырванная из контекста общего утверждения, правда?

    Я привёл этот аргумент скорее в шутку (извини, тэг айрони там не поставил). Напомню ещё раз, было сделано утверждение “javascript — ужасная технология”; я спросил, на основании чего был сделан такой вывод, добавив при этом (скорее, в шутку) про azure — и вместо ответа получил на сто комментариев вялое обсуждение “ты ничего не понимаешь в Azure”. Хоть к неверно расставленным запятым в предложении не придрались.

    Это ты шутил, набирая на клавиатуре столько текста?
    Ок, Евгений Ваганыч, ок.

    Всё посоны, тинпу шутник оказывается.
    Расходимся.

  158. LanTunes:

    : в фотошопе нет фичи “сохранить как c#”, а жалкие подобия – в каждой строчке.

  159. UPnsuper:

    :
    >

    > Это ты шутил, набирая на клавиатуре столько текста?

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

    > python/ruby/erlang — ок. Под них есть все необходимые провайдеры для доступа к sql azure. Пусть они написаны не микрософтом

    И всё же, в данном контексте есть разница, микрософтом или не микрософтом.
    И не sql единым…

  160. KoZlo:

    : расскажи мне о семантике this в javascript. ну то есть, если семантика нормальная, о ней можно рассказать короткой фразой, так? вот в Python: self – обычное название первого аргумента метода, в который имплицитно передается ссылка на объект, если метод вызван как его аттрибут. ну что-то типа того. про javascript сможешь?

  161. UPnsuper:

    :
    > в фотошопе нет фичи “сохранить как c#”

    Ну тогда, наверное, дизайнер всё-таки умеет пользоваться ещё каким-то средством, отличным от фотошопа; или программист каким-то, отличным от студии?

    > а жалкие подобия — в каждой строчке.

    Очень конструктивно и аргументированно, да.
    Жалкие подобия в каждой строчке у тебя, у меня нет ни одного жалкого подобия ни в одной строчке. Потому что я так сказал.

  162. REZmo:

    :
    > python/ruby/erlang — ок. Под них есть все необходимые провайдеры для доступа к sql azure. Пусть они написаны не микрософтом
    Да, есть разница, деплоить полегче и на пару строк меньше кода доступа к сервисам. И что дальше? Ява скрипт от этого стал лучше?

    И не sql единым…
    Ок, еще blobs, queues и еще чего-нибудь. Это никак не изменит моего отношения к java script.

    Обожемой, там исходно было 7 (семь) слов. Извини, на тэге айрони сэкономил.
    А дальнейшее столько текста было вызвано уже вами, придравшимися к этой совершенно незначительной детали вместо того, чтобы ответить что–то по существу.

    Ok, чо.
    В посту про ноутбук ты тоже забыл тег айрони.
    А про ремонт просто не писал его, ибо и так всё понятно.
    Ну а этот пост весь выделить надо.
    Аргументировать шутя – вот твоё настоящее призвание.
    Код тегом айрони не выделяешь, кстати? А потом тестерам на дефекты – “чуваки, да это я пошутил”!!1

  163. UPnsuper:

    : Вот не пойму, то ли ты настоящий дебил, то ли очень искусно прикидываешься.

    Тэга айрони не хватало вот здесь:

    :
    > По своей сути html css и javascript — ужасные технологии.

    Javascript–то тебе чем не угодил? На нём серьёзные дядьки даже сервера пишут!
    Ну и про HTML ты зря так, надо просто понимать, что это — не язык программирования, а язык разметки.

    > И в коде твоём кроме декларативности нифига нет.

    Возможность code reuse ещё — ну как и в xslt.
    А в aspx, я так понимаю, из всего code reuse — только partial views. В Razor ещё добавляются функции, но их можно использовать только в той вьюхе, где они определены.

    Но из всего комментария, конечно же, надо было выдрать одну-единственную фразу, не сильно-то относящуюся к делу, и раздуть её обсуждение на сотню комментариев!

  164. LanTunes:

    : ну ок, давай, например, допустим посмотрим, как у тебя можно прикрутить событие вроде OnSelectedItemChanged на банальный select.

  165. UPnsuper:

    : Извини, сейчас не готов – я довольно давно занимался серьёзными вещами на JS, сейчас не упомню уже особенностей его ООП и всех этих фич с прототипами.

  166. UPnsuper:

    : Кагбе ничего, что и “у меня”, и в ASP.NET MVC (если не извращаться с использованием в нём WebForms, если даже это и возможно) принципиально другая идеология? Ладно ещё я, но как же так – выходит, и MS дебилы со своим Razor, в котором всё приходится делать ручками, а не с автоматическим перетаскиванием туда-сюда всего viewstate на каждый чих

    В огороде бузина, а в Киеве дядька.

  167. LanTunes:

    : я не понял этого потока мысли. Мы же говорим об “общепринятых” идеологиях? Или о чем? Давай тогда посмотрим хотя бы как у тебя делается обработка нажатия на кнобку.

  168. UPnsuper:

    :
    > Мы же говорим об “общепринятых” идеологиях?

    ОК, мы говорим об “общепринятых” идеологиях. Кроме того, напомню на минуточку, пост посвящён ASP.NET MVC.
    И какое отношение ко всему этому имеют webforms?

  169. LanTunes:

    : и что? злые дяди заставили тебя использовать asp.net как похапэ и запретили webforms? Я как-то даже ни разу не задумывался о том, что их можно зачем-то разделять. Ты пишешь какую-то неимоверную хуйню, если честно, но я все же пытаюсь понять к чему ты клонишь. То есть как бы генератор html на основе xslt, который генерируется при помощи c# – это ахуенно, но это по-прежнему всего лишь генератор html и не более. В asp.net это нужно как рыбе зонтик или как собаке пятая нога, или как то и другое вместе взятое.

  170. UPnsuper:

    :
    > злые дяди заставили тебя использовать asp.net как похапэ и запретили webforms? Я как–то даже ни разу не задумывался о том, что их можно зачем–то разделять.

    Эээ. Я ещё раз напомню, речь идёт об ASP.NET MVC.

    > это ахуенно, но это по–прежнему всего лишь генератор html и не более. В asp.net это нужно как рыбе зонтик или как собаке пятая нога, или как то и другое вместе взятое.

    Для чего тогда, по-твоему, нужен Razor?

  171. LanTunes:

    : Razor нужен для того, чтобы заработать денег. И вообще “view engine” в его описании вовсе не то, что ты подумало.

  172. UPnsuper:

    : Razor был как пример.
    Просто вроде как ASP.NET MVC позиционируется как “ура, наконец-то можно не писать кучи неорганизованного говнокода с WebForms, а можно легко и удобно делать полноценный MVC”. Некоторые аспекты штатных viewengine (да и не только их) мне не нравятся недостаточной чёткостью и строгостью (т.е. от старого ASP.NET к новому ASP.NET MVC продвинулись в правильном направлении, но недостаточно).

    Как-то странно в этом контексте выглядит “это уже есть в WebForms”.

  173. Xuaapp:

    Чуваки, хватит уже говно-сайты ебашыть! Итак интернету от них плохо.

  174. LanTunes:

    : так и не пиши, тебя никто не заставляет. Я повторяю, что код, который ты считаешь почему-то “общепринятым” в aps.net пишут инвалиды умственного труда и похапешники.

  175. UPnsuper:

    : Да я бы с радостью, но жизнь заставляет.

  176. UPnsuper:

    :
    > Я повторяю, что код, который ты считаешь почему–то “общепринятым” в aps.net пишут инвалиды умственного труда и похапешники.

    Я всё-таки не дождусь, наверное, от тебя ответа. Так как всё-таки пишут неинвалиды и непохапешники в asp.net mvc? Через WebForms?

  177. LanTunes:

    : пиздец ты надоелло. Что такое WebForms объясни мне, и я тебе может быть скажу через него писать или через жопу.

  178. UPnsuper:

    : http://msdn.microsoft.com/en-us/library/&#133;

    Или я тут не совсем правильную терминологию использую, и ты сейчас опять решишь придраться к этому вместо того, чтобы ответить по существу?

    Процитирую ещё популярную книжку:

    ASP.NET MVC — это платформа для веб-разработки от Microsoft, которая сочетает в себе эффективность и аккуратность архитектуры “модель-представление-контроллер” (model-view-controller — MVC), новейшие идеи и приемы гибкой разработки, а также все лучшее из существующей платформы ASP.NET. Это полная альтернатива традиционной технике ASP.NET WebForms, предлагающая существенные преимущества для всех, кроме самых тривиальных проектов веб-разработки. <

    Недостатки традиционной платформы ASP.NET

    Технология ASP.NET была замечательной и поначалу казалась прямой дорогой в светлое будущее, но, разумеется, в реальности все было несколько сложнее. За годы использования WebForms проявились слабые стороны.

    • ViewState. Реализованный механизм поддержки состояния между запросами (ViewState) часто требовал передачи огромных блоков данных между клиентом и сервером. В реальных приложениях этот объем нередко достигал сотен килобайт, которые ходили вперед и назад с каждым запросом, вызывая раздражение у посетителей сайтов из-за длительного ожидания реакции на каждый щелчок на кнопке или попытку перехода на следующую страницу в большой таблице. В той же мере страдала от этого1 и платформа ASP.NET AJAX, даже несмотря на то, что посредством Ajax планировалось как раз и решить проблему объемного трафика, связанный с полным обновлением страницы.

    • Жизненный цикл страницы. Механизм подключения событий клиентской стороны к коду обработчиков событий на стороне сервера, как часть жизненного цикла страницы, мог быть чрезвычайно сложным и хрупким. Очень немногим разработчикам удавалось успешно манипулировать иерархией элементов управления во время выполнения, избегая ошибок ViewState или не сталкиваясь с ситуацией, когда некоторые обработчики событий совершенно загадочным образом отказывались работать.

    • Ограниченный контроль над HTML-разметкой. Серверные элементы управления визуализируют себя в виде HTML-разметки, но не обязательно в виде того кода HTML, который вам нужен. Получаемый в результате код HTML нередко не отвечает требованиям веб-стандартов и не использует CSS, а система серверных элементов управления генерирует непредсказуемые и сложные значения идентификаторов, с которыми трудно работать в JavaScript-коде.

    • Ложное чувство разделения ответственности. Модель отделенного кода (code-behind) ASP.NET предоставляет средства вынесения прикладного кода из HTML-разметки в файл отделенного кода. Это отвечает широко принятому принципу разделения логики и представления, но на самом деле разработчикам приходилось смешивать код представления (например, манипуляцию деревом элементов управления серверной стороны) с логикой приложения (например, манипуляцию информацией из базы данных) в одном монстроподобных классах отделенного кода. Без более четкого разделения ответственности конечный результат зачастую получался хрупким и непредсказуемым.

    • Невозможность тестирования. Когда проектировщики ASP.NET создавали свою платформу, они не могли предвидеть, что автоматизированное тестирование станет неотъемлемой частью современной разработки программного обеспечения. Не удивительно, что спроектированная ими архитектура совершенно не приспособлена для автоматизированного тестирования.

    Но, наверное, автор этой книжки – дебил, и авторы прочитанных мной статей в интернетах – дебилы. Просто я не сразу понял всей глубины дебилизма этих авторов, и поэтому удивился, когда мне стали говорить “не еби мозг, есть же <asp:table runat=”server”>”.

  179. LanTunes:

    : так что такое WebForms-то, еба?

  180. UPnsuper:

    : Так ты не ходил по ссылке? Или у тебя провайдер заблокировал доступ к msdn.microsoft.com? Специально для тебя процитирую текст со ссылки, данной в предыдущем комментарии:
    Web Forms are the heart and soul of ASP.NET. Web Forms are the User Interface (UI) elements that give your Web applications their look and feel. Web Forms are similar to Windows Forms in that they provide properties, methods, and events for the controls that are placed onto them. However, these UI elements render themselves in the appropriate markup language required by the request, e.g. HTML. If you use Microsoft Visual Studio®.NET, you will also get the familiar drag-and-drop interface used to create your UI for your Web application.

    Any HTML element can be marked to also run as an HTML control when the Web Form is processed on the server by adding “runat=server” to the tag:

  181. LanTunes:

    : то есть ты берешь, вырезаешь грязной ложкой “heart and soul of ASP.NET” и вставляешь туда какой-то MVC. Давай же теперь, наконец, разберемся, что такое asp.net mvc, о котором ты так упорно твердишь.

  182. UPnsuper:

    : Бля, это так толсто, что уже даже тонко.

    Ждём от тебя комментария “то есть ты берешь, вырезаешь грязной ложкой “heart and soul of Java” и вставляешь туда какой–то script. Давай же теперь, наконец, разберемся, что такое Javascript, о котором ты так упорно твердишь.

  183. LanTunes:

    : в чем суть претензии? Я цитирую твой текст.

  184. Axoon:

    Я долго читал всё это. Теперь у меня болит голова и рот говорит матом.

    , что за ад ты пишешь? Вариант полностью изучить возможности ASP.NET MVC принципиально не рассматривается?

    Магия начинается там, где не хватает знаний.

    Если что, много лет сидел на PHP, были у меня и Classic ASP и ASP.NET, потом ASP.NET MVC 1/2/3 и кроме этого play! framework и разное другое по мелочи.

    О какой ненависти мы говорим? Это, видимо, не ненависть к языку C# и к платформе.NET? И не к идеологии MVC в целом, да? И, видимо, не ненависть к HTML, так как “привык генерировать выходной HTML с помощью XSLT”?

    То есть у нас ненависть к дефолтным 2 типам View Engine в ASP.NET MVC 3. Часть этой ненависти пропадает, после опять таки изучения возможностей, ну и на крайний случай лечится запросом в гугл за инструкциями по разработке собственного движка на базе чего угодно, включая любимый XSLT. Тут я мог бы признаваться в любви к тем двум стандартным и ругать лишнюю сериализацию объектов в xml для трансформации и горы витиевытых xslt-конструкций, которые не лучше того же разора, но это ИМХО и не стоит внимания.

    Да мы ещё забыли про вариант view на c#. Мой опыт мне говорит, что есть такой градиент от арт-директора, вдоль дизайнера, верстальщика, программера до DB-девелопера(например). По этому градиенту человек редко размазан полностью, он обычно живет в какой-то части спектра знаний и навыков и лишь немного заступает за его края, чем пересекается с коллегами слева и справа. Так вот, когда мы начинаем городить view на c# мы в итоге рано или поздно приходим к тому, что девелопер вконец запутался с генерацией html, а более ловкий в этом верстальщик не в силах ему помочь из-за языкового барьера. Надо ли оно нам, решать вам, конечно, но пахнет это тупиком.

    А про кашу из конструкций разора, js и css – это тупо культура проекта и технологии не при чем. Если поискать можно найти кучу примеров, как поступать в структуре веб-проекта и с медиа, и со стилями и со сценариями клиентскими, короче, считаю, что это к конкретной ненависти не относится. Das war’s.

  185. UPnsuper:

    :
    > То есть у нас ненависть к дефолтным 2 типам View Engine в ASP.NET MVC 3.

    Ты о какой именно ненависти? Если о “Я с первых же страниц не полюбил ASP.NET MVC” – то там далеко не только о View Engine речь.

    > Часть этой ненависти … лечится запросом в гугл за инструкциями по разработке собственного движка на базе чего угодно, включая любимый XSLT.

    Ты, наверное, всё-таки не “долго читал это”. Я знаю о возможности написания своих viewengine; возможность использования готового / написания своего viewengine для работы с XSLT тут уже обсуждалась.

    > и горы витиевытых xslt–конструкций, которые не лучше того же разора, но это ИМХО и не стоит внимания.

    Горы витиеватых xslt-конструкций гораздо лучше разора тем, что есть простое правило, тэги в пространстве имён xsl – конструкции, всё остальное – идёт на выход (ну, если не учитывать возможности подставлять значения в атрибуты через фигурные скобки – имхо, зря в xslt сделали такую фичу).
    А ещё xslt, как я говорил в исходном посте и продолжаю говорить, лучше и разора, и aspx тем, что он декларативен, а не императивен. Я считаю, что в коде представления не место всяким там while/for/foreach и не место изменяемым переменным.

    > А про кашу из конструкций разора, js и css — это тупо культура проекта и технологии не при чем.

    ОК, запишем, труъ-пацаны в принципе никогда не пишут инлайновые js-инструкции. Про css в принципе согласен, хотя в исходниках этой страницы, например – дохера css.

    Но даже без js, ещё пара примеров нечёткой неформализованной логики отличия кода от данных в razor:
    1) email-адреса и аналогично выглядящие конструкции кода – разработчик постоянно должен помнить, как именно оно обраатывается, а адреса засовывать в соответствующие тэги.
    2) Вот сегодня столкнулся с каким-то вот таким кодом. А потом в процессе улучшения дизайна понадобилось убрать выделение жирным. У разработчика постоянно должна болеть голова о том, что значения выводятся через @, если они окружены html-кодом или не находятся внутри блоков вроде if/foreach; но @ недопустим, если значения находятся внутри блоков и не окружены html-кодом.

    ASPX – гораздо лучше, но тоже говно.

  186. UPnsuper:

    : Нет, ты его не цитируешь.
    Таким же образом ты бы мог текст с обсуждением каких-нибудь тонкостей прототипов в JS “процитировать” в то есть ты берешь, вырезаешь грязной ложкой “heart and soul of Java (классы – прим. )” и вставляешь туда какой–то script. Давай же теперь, наконец, разберемся, что такое Javascript, о котором ты так упорно твердишь.

  187. UPnsuper:

    :
    > , что за ад ты пишешь? Вариант полностью изучить возможности ASP.NET MVC принципиально не рассматривается?

    Если бы он не рассматривался, я не создал бы этот пост.

  188. Axoon:

    :
    @if(condition)
    {
    @value
    }

    Ад! И в ASP.NET MVC разобраться не хочет и в верстке что либо понимать отказывается. Короче, весь пост о глупости какой-то некомпетентной. Жалею, что сунулся. Дурак, больше не буду.

  189. LanTunes:

    : короче, я понял что твой монолог не превратить в диалог. Успехов в написании html генераторов..

  190. UPnsuper:

    : А разве не
    @if(condition)
    {
    value
    }?

    Помню, было какое-то говно с этим связано. Какое – не помню, уж извини, на уютную блогочку пишу только из дома, а с mvc работаю только в офисе.

    > Ад! И в ASP.NET MVC разобраться не хочет и в верстке что либо понимать отказывается. Короче, весь пост о глупости какой–то некомпетентной

    А на самом-то деле Razor – лучший в мире синтаксис для написания представлений, охеренно чёткий и строгий!

  191. UPnsuper:

    : Короче, ты признай уже, что влез в пост, не поняв, о чём речь.

    И ещё раз скажу, если ты хочешь разобраться, что такое тот ASP.NET MVC, о котором я так упорно твержу – можешь прочитать, например, вот эту книжку.

    Если настоящий ASP.NET MVC совсем другой – ну это, очевидно, не ко мне вопрос, а к авторам таких книжек. Хотя я и не откажусь от ссылки на правильную книжку.

    Мне вот интересно, что такое тот ASP.NET MVC, о котором говоришь ты (если, конечно, ты не отрицаешь вообще существование продукта с таким названием), и чем он, по-твоему, отличается от просто ASP.NET.

  192. UPnsuper:

    А ситуация действительно в точности такая, как я написал комментарием раньше. Например, приходит новичок в JS, знакомый с JS только две недели, и пытающий разобраться в том, как асинхронный код превратить в синхронный (ещё не зная, что он не должен этого хотеть) – а разведёт соплей на сто комментариев о том, как этот новичок осмеливается писать без классов, что это за прототипы, и вообще, что это за хуйню тот сотворил с Java и зачем дописал к её названию script.

  193. UPnsuper:

    Новый примерчик. C# в стиле XSLT, то же самое на ASPX – первый вариант даже на меньшем количестве строчек! А ещё в нём не надо думать о том, когда вывод должен быть через <%=, а когда через <%:

  194. UPnsuper:

    : Упс, первой ссылкой промахнулся. C#, ASPX.

  195. LanTunes:

    : похапэ головного мозга в клинической форме продолжается ггг

  196. UPnsuper:

    : Похапе у тебя в штанах)

  197. LanTunes:

    : в штанах у меня две ноги хуй и жопа. А тут полное похапэ головного мозга.

  198. UPnsuper:

    : Зачем ты влез в пост, не зная, что такое ASP.NET MVC (и что этот продукт немного отличается от ASP.NET) и, судя по всему, не зная, что такое XSLT?

    И, кстати, как специалист по похапэ головного мозга – будь любезен, скажи, в каком веб-проекте с доступными исходниками нет похапэ головного мозга.

  199. LanTunes:

    : вот щас я начну троллить. Смари!
    Знаешь что общего у женщин-программистов и морских свинок?

  200. UPnsuper:

    : И те, и другие любят спагетти?

  201. LanTunes:

    : нет.
    Морская свинка ни к морю, ни к свиньям отношения не имеет.

  202. KoZlo:

    : а оно разве женщина

  203. LanTunes:

    : а я ибу? Как говорится – “назвался груздем – обратись к психиатру” 🙂

  204. UPnsuper:

    : То есть, все твои претензии в этом посте основаны исключительно на том, что автор поста – женщина?

  205. LanTunes:

    : у меня вообще в этом посту никаких претензий ни к кому не возникало :)))

  206. UPnsuper:

    : ну да, конечно 🙂
    только просрался тут на сотню комментариев, не сказав ровным счётом ничего по делу.

  207. LanTunes:

    : хорошая ржака, спасибо 🙂

  208. LanTunes:

    : я тебе “по-делу” десяток раз скахал, что ты пишешь на php а не на asp.

  209. UPnsuper:

    : я тебе “по–делу” десяток раз скахал, что ты пишешь на php а не я.

  210. LanTunes:

    : 8))))))))))))))))))))))))))))))))))))))

  211. UPnsuper:

    :
    > расскажи мне о семантике this в javascript. ну то есть, если семантика нормальная, о ней можно рассказать короткой фразой, так?

    Очень просто: https://gist.github.com/2814621

  212. UPnsuper:

    Кстати, на фоне jade все эти razor и aspx выглядят особенно уёбищно.

  213. UPnsuper:

    :
    > Давайте немного переключимся с , и пообсуждаем View Engines для ASP.NET MVC3, +/ — (использования, и где начинается анальная боль, и фикальное братство?)

    Вроде какое-то подобие jade кто-то замутил для asp.net mvc. ХЗ, насколько оно хорошо.
    Вот что умеет делать исходный jade: https://github.com/visionmedia/jade

  214. Arbam:

    :
    Musta-krakish
    Musta-krakish
    The time has come to awaken him,
    I call upon the ancient lords of the underworld to bring forth this beast and,

    Awaken, awaken, awaken, awaken,
    Take the land that must be taken.
    Awaken, awaken, awaken, awaken,
    Devour worlds, smite, forsaken.

    😀 кто тебя разбудил? из тысячелетнего сна?

  215. UPnsuper:

    : Да просто начал работать с express, и вспомнил тот весёлый срач про aspx.

  216. KoZlo:

    : лол, у тебя ошибка в первом же случае

    http://cl.ly/301q3i3R0G0V2P2o2l3H

    и примеры нихуя не объясняют. это не объяснение семантики, это демонстарация кучи случаев

  217. UPnsuper:

    :
    > лол, у тебя ошибка в первом же случае
    > http://cl.ly/301q3i3R0G0V2P2o2l3H

    У меня действительно там есть ошибка (писал вручную, не проверял), но не та, о которой ты думаешь.
    Если писать правильный код, исходя из моего определения – никаких проблем не будет; проблемы появляются, когда пишешь говнокод (но это уже сродни вопросам вида “а что выдаст *a[*a] += *a++ + ++*a”).

    > и примеры нихуя не объясняют. это не объяснение семантики, это демонстарация кучи случаев

    Это не примеры, это объяснение того, что означают в javascript оператор “точка” и ключевое слово “this” как синтаксический сахар над процедурным стилем программирования.

  218. UPnsuper:

    : Это ты к чему? Вроде обсуждали серверные шаблоны.

    Если же говорить о knockout.js, то мне не нравится идея такого заполнения данными (не говоря уж о различных технических проблема).

  219. UPnsuper:

    : И, к слову:

    ECMAScript v5 + strict mode, и будет тебе счастье.

Добавить комментарий