• Ооочень простой java SQL-парсер?

    KEKSOV
    @KEKSOV
    На стеке обсуждают подобный вопрос.
    Предложены следующие варианты JSqlParser, ZQL и еще платный вариант. Так же там порекомендовали воспользоваться ANTLR — похоже, что для Вашего случая подойдет функционал StringTemplate
    Ответ написан
    Комментировать
  • Ооочень простой java SQL-парсер?

    opium
    @opium
    Просто люблю качественно работать
    Ну напишите регулярки и доставайте с помощью них.
    Ну а регулярки без проблем можно в файле хранить.
    Ответ написан
    3 комментария
  • WEB-программирование. Что выбрать и с чего начать?

    pletinsky
    @pletinsky
    На мой взгляд базисные знания следующие:

    1) Клиентская верстка и стили (html, css). Можно пробежаться глазами хотя бы по теме. Почитать про правила верстки.
    2) Клиентская логика, работа с DOM (Javascript, Jquery). Важная тема — стоит уделить ей время.
    3) Теория распределенных приложений. — Веб приложения чаще всего являются распределенными. Поэтому стоит изучить архитектурные принципы распределенных приложений. API и т.д.
    4) Базы данных (SQL, etc.) — Конечно начать стоит с классического сиквела — но стоит посмотреть и шире — например на nosql решения.

    Далее стоит выбрать технологическую платформу. С вашим бэграундом вероятно стоит посмотреть в сторону Microsoft ASP.NET MVC. Это великолепное решение и погружение в обширный мир разработки в рамках решений MS. У них сейчас самые развитые языки программирования (C# 5.0), самые развитые инструментальные среды (MS Visual Studio), одна из самых совершенных виртуальных машин (.Net).
    Решение удобнее всего для серьезных и масштабных проектов, хотя и для небольших вполне подойдет.
    Следующий кандидат — Ruby on Rails. Это развитое решение с замечательным языком программирования и отличными каркасными решениями, заточенное именно под веб. Возможно лучше подойдет для небольших приложений — но и промышленные продукты без проблем потянет.
    Он также очень распространен.
    Ну и конечно PHP. Язык программирования данной технологической платформы отстает от требований к разработке больших решений — он скорее подходит для написания скриптов. Однако существует колоссальное количество каркасных решений для данной платформы, которые позволяют реализовывать даже приличного объема продукты. Кроме того данное решение наверное самое распространенное из всех.
    И оно потихоньку подтягивается до уровня платформ для разработки промышленных продуктов.
    Существует также множество других решений. Например огромный мир Java и решения на базе серверного Javascript.

    Скоп работ будет состоять из следующих частей:

    1) Клиентская часть (html, css, javascript). Тут вам понадобятся знания по верстке как раз и жаваскрипту. Также следует использовать различные базовые решения и фреймворки. Эта как раз та часть, где слишком глубокие знания (например использование чистого некроссбраузерного javascript) могут быть вредны и лучше все базировать на готовых платформах.
    Часто эта часть в web приложениях бывает больше чем хотелось бы.

    2) Серверная часть. Тут все определяется технологической платформой описанной в предыдущем абзаце. В веб приложениях как правило немного серверной логики — почти все можно заменить на внешние библиотеки. Но у разработчиков десктопных приложений всегда есть соблазн развивать именно эту часть потому что она им знакома — не поддавайтесь. Специфическая для проекта серверная логика нужна не очень часто. Если ее много — значить кто то увлекся велосипедами. Тоже касается разработок API и систем взаимодействия с внешними сервисами.

    3) Базы данных. Конечно обязательно! стоит использовать развитые ORM системы. То есть нужно их изучить под выбранную вами технологическую платформу. Ну и конечно базовые знания баз данных тут тоже очень понадобятся — сиквел, реляционная модель и все остальное.

    Дерзайте. Я за вас болею.
    Ответ написан
    Комментировать
  • WEB-программирование. Что выбрать и с чего начать?

    Надо начинать с html+css+js. Эти языки формируют область приложения для других языков. Без их хорошего знания, Вас ждут множество проблем.
    Ответ написан
    5 комментариев
  • WEB-программирование. Что выбрать и с чего начать?

    SLY_G
    @SLY_G
    журналист, переводчик, программист, стартапщик
    Смотря с какими целями.
    Если просто так, хобби, тогда почитайте общую литературу, посмотрите, что вам больше нравится…
    Если работу найти, тогда посмотрите, по каким словам вакансий больше.
    Вы правильно пишете, что инструмент подбирается под задачу, однако web — это зоопарк технологий и задач, поэтому это не выбор, это слишком общее Ж)
    Для приложений на стороне клиента есть javascript, flash. Для серверных приложений чаще всего сейчас используют php, ruby. Для больших проектов ещё базы данных понадобятся. Ну а есть ещё node.js и другие специальные вещи.
    Ответ написан
    Комментировать
  • WEB-программирование. Что выбрать и с чего начать?

    @koriaf
    Составьте список наиболее вероятных технологий и почитайте вводную к каждой. Создайте малюсенький проект в каждой. И там видно будет, к чему душа лежит.
    Ответ написан
    Комментировать
  • Вопрос по MVC. Где выполнять проверку?

    Все что касается валидации / проверки данных должно уходить в модель. Если же вам нужно проверять, валидная корзина (на верхнем более абстрактном уровне), то выполняйте эту проверку в контроллере.

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

    PS удачи и успехов в вашем не легком деле :)
    Ответ написан
    1 комментарий
  • Выбор СУБД под задачу

    alex4Zero
    @alex4Zero
    Вообще согласно Technology Radar от ThoughtWorks, датированному октябрем 12ого года, Neo4j они рекомендуют срочно начать использовать. Вдобавок, если у вас желание появилось попробовать Neo4j, то лучше варианта не найти
    Ответ написан
    Комментировать
  • xml database

    dbmaster
    @dbmaster
    В некоторых проектах использовали xstream.
    Ответ написан
    Комментировать
  • Инструментарий для создания современных web UI?

    dizballanze
    @dizballanze
    Software developer at Yandex
    Ответ написан
    Комментировать
  • xml database

    @biomorf
    Вместо JAXB можно попробовать Jackson JSON Processor
    Ответ написан
    Комментировать
  • Где посоветуете завести программистский блог?

    alrusdi
    @alrusdi
    Blogspot же — максимально кастомизиремо, на мой взгляд:
    www.stylifyyourblog.com/2012/07/syntax-highlighting-in-blogger-using.html
    А на относительно отвлеченные темы лучше подкасты пишите. Я первый в очереди на прослушивание по пути на работу и обратно
    Ответ написан
    Комментировать
  • Интернет-магазин. Как хранить разновидности товаров в БД?

    raskumandrin
    @raskumandrin
    Свойства вынести в отдельные таблицы (по ним ещё потом делать фильтры товаров).
    Сделать таблицу для связи товара и свойства, в неё же добавить цену, остатки на складе и доступность позиции для продажи (если например анализируется информация от поставщиков).
    Ответ написан
    4 комментария
  • Как научиться Test Driven Development вместо Test First Development?

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

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

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

    Например вы делаете метод который вычисляет корень из числа… Напишите простой тест подавая туда число 4 и ожидая что на выходе будет 2. Далее имплеминтируете функционал добиваясь чтобы тест прошел.
    Но ничего лишнего там писать не стоит. Потом пишите следующий тест например на реакцию на отрицательные значение — далее имплементируете функционал. И так далее.

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

    Вот тут описаны проблемы при использовании подхода.

    TDD — это не метод тестирования — а метод разработки. Он требует архитектурной готовности системы.
    При тестировании модуля (например метода или класса) обязательно избавьтесь от всех внешних зависимостей путем мокирования.
    Лучше ввести это как жесткое правило — потому, что оставлять такие зависимости можно только в редких случаях и когда вы уже прошарены в теме и что называется знаете — где правила можно нарушать.

    Не ленитесь разрабатывать по шаблону — соблюдая мельчайшие и даже самые странные правила — даже если вы видите потерю эффективности — и со временем вы научитесь применять данный инструмент.
    Ответ написан
    1 комментарий
  • GWT — работа с серверными классами?

    @bazarnazar
    Может я не совсем понял проблему, но может тебе поможет этот мой пост: habrahabr.ru/post/154321/
    Ответ написан
    1 комментарий
  • GWT — работа с серверными классами?

    asm0dey
    @asm0dey
    1 вариант — RequestFactory. Требует интерфейсов-сателлитов.
    2 вариант (этот выбираю я) — все модельные классы лежат в shared, при отдаче объектов они прогоняются через дозер. У него есть специальный конфиг для хибернейта. Для того чтобы не резолвить неинициализированные коллекции — есть специальный маппер в одну строку. Код могу дать.

    Ну и не забывать про правильные паттерны — MVP в лице gwt-platform, например.
    Ответ написан
    Комментировать
  • Как правильно писать юнит-тест для класса работающего с файлом?

    ixSci
    @ixSci
    читай про mock'и и используй их. Физическое чтение с ФС производить излишне, ты же не драйвер ФС пишешь, а значит тестировать надо твою логику.
    Ответ написан
    8 комментариев