Каков лучший API/платформа/платформа, с которым Вы когда-нибудь работали? [закрытый]

В C # 5.0 эта проблема исправлена, и вы можете закрыть циклические переменные и получить ожидаемые результаты.

Спецификация языка гласит:

8.8.4 Оператор foreach

(...)

Оператор foreach в форме

foreach (V v in x) embedded-statement

затем расширяется до:

{
  E e = ((C)(x)).GetEnumerator();
  try {
      while (e.MoveNext()) {
          V v = (V)(T)e.Current;
          embedded-statement
      }
  }
  finally {
      … // Dispose e
  }
}

(...)

Размещение v внутри цикла while важно для того, как оно захватывается любым анонимным функция, встречающаяся во встроенном операторе. Например:

int[] values = { 7, 9, 13 };
Action f = null;
foreach (var value in values)
{
    if (f == null) f = () => Console.WriteLine("First value: " + value);
}
f();

Если бы v было объявлено вне цикла while, оно было бы общим для всех итераций, и его значение после цикла for было бы конечным значением, 13, которое это то, что напечатал бы вызов f. Вместо этого, поскольку каждая итерация имеет свою собственную переменную v, переменная, захваченная f на первой итерации, будет продолжать содержать значение 7, которое и будет напечатано. ( Примечание: более ранние версии C # объявлены v вне цикла while. )

21
задан 4 revs, 2 users 96% 6 June 2010 в 16:17
поделиться

28 ответов

C # и .NET framework.

38
ответ дан 29 November 2019 в 06:03
поделиться

Zend Framework представляет собой один из лучших существующих PHP-кодов.

0
ответ дан 29 November 2019 в 06:03
поделиться

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

0
ответ дан 29 November 2019 в 06:03
поделиться

Фреймворк CSLA ( http://lhotka.net/ ) действительно хорош, мы использовали его пару лет, прежде чем создать свой собственный.

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

0
ответ дан 29 November 2019 в 06:03
поделиться

LPC для разработки MUD . Хотя иногда от этого хочется выколоть и глаза.

1
ответ дан 29 November 2019 в 06:03
поделиться

MooTools делает некоторые из наиболее удобных в обслуживании (и самых простых в написании) приложений JavaScript, которые вы можете получить.

1
ответ дан 29 November 2019 в 06:03
поделиться

Вот мои любимые :

Использование

в качестве фреймворка

и отредактировал с помощью

и управлял проектом с помощью Trac .

Если вы работаете на Mac, как только вы вы внесли изменения в код, проверьте их с помощью:

svn diff | mate

, и вы сможете просмотреть свои изменения, выделив их красивым цветом.

1
ответ дан 29 November 2019 в 06:03
поделиться

В сочетании с ASP.NET, C #, Kentico CMS является относительно новой структурой для создание веб-приложений. В нем есть пара вещей:

  • Гибкий API и архитектура для разработчиков
  • Интуитивная CMS для не разработчиков и т. Д.
  • Целый набор готовых функций, повышающих производительность

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

1
ответ дан 29 November 2019 в 06:03
поделиться

jQuery - мой лучший помощник на милю страны. Это экономит часы и часы царапины в голове и кроссбраузерных взлетов. Одна из лучших вещей для меня (а их много) - это то, как селекторы так хорошо сочетаются с селекторами CSS, с которыми я очень хорошо знаком. Это делает манипуляции с DOM абсолютным удовольствием, а Ajax - легким ветерком. Спасибо, Джон Ресиг, снизу моего Mac Pro спасибо, чувак, ты гений!

2
ответ дан 29 November 2019 в 06:03
поделиться

ExtJS за его общие возможности по UI, манипуляции с DOM, простоту реализации Ajax и многие другие вещи.

Также их форум поддержки - один из лучших.

И нет, я не работаю на них, но они мне нравятся.

2
ответ дан 29 November 2019 в 06:03
поделиться

Spring как для Java, так и для .NET Rock!

3
ответ дан 29 November 2019 в 06:03
поделиться

Считается ли Smarty ? Это отличная платформа, и она хорошо задокументирована.

4
ответ дан 29 November 2019 в 06:03
поделиться

Flex 2+

Причины:

  • AS3 почти готов, поскольку сочетание динамического / статического типизированного языка (C # 4 тоже смешивает их) с иерархиями на основе классов и на основе прототипов , замыканиями ], функции первого класса .
  • Мне нравятся свойства (например, в Delphi и C #). И бесплатные функции (не более public static int Main () соглашение)
  • MXML - это гениально. Flex 4 принесет больше согласованности, подобной XML, но потеряет некоторую скорость разработки (например, mx: Component больше не находится в пространстве имен mx: ). Это в отличие от XAML, который уже является XML-согласованным, но при этом очень подробным (или классы фреймворка требуют такой многословности?))
  • Нет потоков . На самом деле они никогда не понадобились, поскольку весь ввод-вывод является асинхронным (случайно, это то же самое, что python twisted ).
  • Основные виджеты здравого смысла. Они почти всегда делают 99% того, чего вы желаете. Но вы всегда можете сделать свой собственный.

Обратной стороной является то, что это не полный стек, а просто уровень представления. Вам все еще нужен сервер C # / Java / PHP. И он остался проприетарным ( ECMAScript 4 так и не прошел).

Какой существующий фреймворк действительно вдохновил вас на отличную работу?

Ну, я пытаюсь написать что-нибудь подобное для Gtk +.

На самом деле они никогда не были нужны, поскольку весь ввод-вывод является асинхронным (случайно, это то же самое, что python twisted ).
  • Основные виджеты здравого смысла. Они почти всегда делают 99% того, чего вы желаете. Но вы всегда можете сделать свой собственный.
  • Обратной стороной является то, что это не полный стек, а просто уровень представления. Вам все еще нужен сервер C # / Java / PHP. И он остался проприетарным ( ECMAScript 4 так и не прошел).

    Какой существующий фреймворк действительно вдохновил вас на отличную работу?

    Ну, я пытаюсь написать что-нибудь подобное для Gtk +.

    На самом деле они никогда не были нужны, поскольку весь ввод-вывод является асинхронным (случайно, это то же самое, что python twisted ).
  • Основные виджеты здравого смысла. Они почти всегда делают 99% того, чего вы желаете. Но вы всегда можете сделать свой собственный.
  • Обратной стороной является то, что это не полный стек, а просто уровень представления. Вам все еще нужен сервер C # / Java / PHP. И он остался проприетарным ( ECMAScript 4 так и не прошел).

    Какой существующий фреймворк действительно вдохновил вас на отличную работу?

    Ну, я пытаюсь написать что-нибудь подобное для Gtk +.

    Но вы всегда можете сделать свой собственный.

    Обратной стороной является то, что это не полный стек, а просто уровень представления. Вам все еще нужен сервер C # / Java / PHP. И он остался проприетарным ( ECMAScript 4 так и не прошел).

    Какой существующий фреймворк действительно вдохновил вас на отличную работу?

    Ну, я пытаюсь написать что-нибудь подобное для Gtk +.

    Но вы всегда можете сделать свой собственный.

    Обратной стороной является то, что это не полный стек, а просто уровень представления. Вам все еще нужен сервер C # / Java / PHP. И он остался проприетарным ( ECMAScript 4 так и не прошел).

    Какой существующий фреймворк действительно вдохновил вас на отличную работу?

    Ну, я пытаюсь написать что-нибудь подобное для Gtk +.

    3
    ответ дан 29 November 2019 в 06:03
    поделиться

    Для меня это Обработка .

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

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

    Кроме того, люди делать блестящие вещи с обработкой :)

    4
    ответ дан 29 November 2019 в 06:03
    поделиться

    Мне очень нравится Java API. Документация является исключительной.

    7
    ответ дан 29 November 2019 в 06:03
    поделиться

    Я большой поклонник фреймворка Cocoa для Mac OS X и, конечно же, Ruby on Rails.

    Cocoa прост в использовании, поддерживает MVC из коробки и абстрагирует Mac OS X, сохраняя при этом «близость» к операционной системе.

    Rails - это, в общем, Rails. Он делает то, что Rails делает лучше всего.

    8
    ответ дан 29 November 2019 в 06:03
    поделиться

    Я бы сказал Какао. Оказывается, это достаточно богатый API, но без неприглядности Java.

    8
    ответ дан 29 November 2019 в 06:03
    поделиться

    Python, руки вниз. Батарейки в комплекте + PyQt для графического интерфейса.

    9
    ответ дан 29 November 2019 в 06:03
    поделиться

    Ruby on Rails (удивительно, что еще не упомянули). Он показывает, как условные обозначения упрощают программирование. Особенно полезной идеей является миграция базы данных вверх и вниз.

    13
    ответ дан 29 November 2019 в 06:03
    поделиться

    Великолепный Boost бок о бок с STL C ++ .

    13
    ответ дан 29 November 2019 в 06:03
    поделиться

    Qt4 ... Это действительно отличная среда графического интерфейса C ++:

    1. Высококачественная чистая документация и руководства.
    2. Межплатформенный
    3. Чистый API.
    4. Это уникальный Фреймворк C ++, который так хорошо поддерживает обратную совместимость с ABI.
    20
    ответ дан 29 November 2019 в 06:03
    поделиться

    Django

    Первый и единственный веб-фреймворк (до сих пор), который действительно заставил меня искать идеи для создания веб-сайтов, чтобы я мог практиковать свои навыки.

    23
    ответ дан 29 November 2019 в 06:03
    поделиться

    jQuery изменил мой взгляд на программирование для Интернета.

    52
    ответ дан 29 November 2019 в 06:03
    поделиться

    С точки зрения того, какой фреймворк позволил мне обеспечить наибольшую ценность для клиентов за час разработчика, я бы сказал, что C # /. Net, за которым следуют jQuery и ASP.Net MVC.

    Тот факт, что я могу (в основном) забыть о проблемах совместимости с браузерами, на мой взгляд, является убийственной особенностью jQuery. Моя команда недавно смогла создать сложное и чрезвычайно загруженное AJAX приложение с использованием jQuery и ASP.Net MVC за считанные недели. Я не могу представить, что смогу сделать так много и так быстро без этих фреймворков.

    1
    ответ дан 29 November 2019 в 06:03
    поделиться

    Я обычно использую методы расширения, когда мне нужно рассматривать объект, предшествующий LINQ, как объект, готовый к LINQ. Например, вы хотите запросить DataRowCollection (свойство DataTable.Rows), которое вы, вероятно, не используете ни для чего, кроме списка DataRows. Я бы сделал метод расширения, который выполняет это преобразование за вас (DataRowCollection в List ). Я также обычно использую метод расширения для безопасного получения значений, когда мне не нужно генерировать исключение, если по какой-либо причине для столбца указано недопустимое имя ключа. Затем вы можете создать метод расширения, который принимает список целых чисел в качестве идентификаторов и имя поля, содержащее идентификатор для возврата того, что вы хотите. Когда все сказано и сделано, это делается с помощью одной строчки кода. Вот класс со всеми вашими методами расширения.

    6
    ответ дан 29 November 2019 в 06:03
    поделиться

    Qt как в симпатичном. Emacs как в макс.

    0
    ответ дан 29 November 2019 в 06:03
    поделиться

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

    0
    ответ дан 29 November 2019 в 06:03
    поделиться

    Лучшая открытая платформа API, которую я использовал, - ViaMichelin, определенно Ferrari среди всех решений и отличных карт. Они снимают блоки с других поставщиков ГИС, и Google находится почти на самом низком уровне качества, поскольку карты Google - это всего лишь базовая услуга.

    0
    ответ дан 29 November 2019 в 06:03
    поделиться
    Другие вопросы по тегам:

    Похожие вопросы: