• Стоит ли новичку начинать с фреймворка или лучше учиться на чистом php?

    rpsv
    @rpsv
    делай либо хорошо, либо никак
    Начинайте с фреймворком.
    При чем на старте, лучше написать какое-нибудь простенькое hello world на нескольких фреймворках, и на чем будет вам проще и удобнее, на том и пишите.
    Писать в самом начале с нуля не имеет смысла, т.к. вы еще не знаете как нужно писать правильно, а фреймворки в этом плане следуют паттернам и вам придется писать правильно.
    Конечно можно наговнокодить везде, но фреймворки будут держать вас более менее в рамках)))
    Ответ написан
    21 комментарий
  • Как учить java ee?

    @poslannikD
    Java/C/C++ Programmer
    Примерный роадмап такой
    1) Знание java core. Особое внимание уделить java multithreading, это важно и незнание этой штуки может сыграть с вами злую шутку.
    На счет кровавого веба, вам будет достаточно знаний 7 версии(java se 1.7) а восьмую доучите в процессе. Единственное исключение что бы не плеваться от ненависти, нужно из 8 версии поучить Date and Time api. Оно там шикарное, в отличии от 7.
    2) После освоения java core, обратите внимание на sql(в ообщем и целом),html, css, js, sass, less.
    3) Как только разобрались с пунктом 2 вы готовы к вебу. И вам нужно выбрать, либо голый ее, либо spring. И там и там есть свои плюсы и минусы, и там и там свои особенности. Но хуже всего, это то что все технологии можно смешать вместе((((
    4)Если решили выбрать spring читаете по нему книги, тутотриалы и прочее.
    Вот к примеру примерчик простого круда(https://www.youtube.com/watch?v=e7swABdqOS4) Но его смотреть можно только если есть база. Мой совет для простых приложений берите спринг.
    5)Если ее тогда читаете книги по ее и пиште свои приложения.

    Список ресурсов.
    1)Java :
    Брюс Эккель Философия java
    Брайн Гоец java concurrency in practice
    Блох эффективная java
    javarush.ru для практики
    2)ее + spring
    книг по этим технологиям мало и они быстро гугляться
    курсы типо григория кислина(есть на трекере но лучше задушить жабу и купить) на этом курсе можно получить целостное представление обо всем стеке
    Смотреть курсы в интернете нужно осторожно, потратьте время на понимание того что такое java ee, сэкономите себе время и нервы. А инструменты будете доучивать по мере возможностей
    Ответ написан
    1 комментарий
  • Какие есть сайты по изучению Kotlin?

    zagayevskiy
    @zagayevskiy Куратор тега Java
    Android developer at Yandex
    0) Ты ещё не андроид-разработчик
    1) Нет, не стоит именно переходить. Нужно знать джаву и стоит параллельно изучить колтин
    2) Для начала Kotlin Koans
    3) Start android не про джаву, а про андроид.
    Ответ написан
    Комментировать
  • Почему Android со временем начинает очень тормозить?

    @ZZahar
    Если решил проблему - нажми "отметить решением"
    Всем в мире известен простой факт - со временем смартфон на Android начинает жутко тормозить.
    Шо?
    Мне помогает переустановка ОС полностью.

    Я поставил себе Lineage OS (android 7) после этого телефон стал мнгновенно работать молниеносно, без лагов вообще, причём я поставил все приложения какие только можно и не ограничивал себя.

    Ну тут проблема скорей всего такая: у вас элементарно что то хавает ОЗУ, если вы удалили прям-прям вообще все приложения, то значит у вас в телефоне что-то сидит раз переустановка помогает.

    Во первых, я рекомендую чистить ОЗУ вручную, если вы это делали с помощью приложения, не делайте этого ибо оно в фоне жрет ещё больше, а если не делали раньше, то делайте. Посмотрите в Гугле как снимать процессы(останавливать) приложения в телефоне. По отключайте все возможную анимацию в телефоне, если это возможно(разблокировка экрана как открывания ворот, ощущения как буд-то приложение разворачивается, когда его открываешь и т.д).
    Постарайтесь так же не устанавливать и не захломлять свой телефон не знакомыми приложениями. Я не знаю как вы это делаете, как вы умудряетесь сделать что бы телефон тормозил и переустановка помогала, я Windows за 3 года не переустанавливал, а кто-то умудряется это делать 2-3 в месяц(!). Будет хорошо, если вы предоставите список всех приложений который у вас был и откуда вы это все скачали.
    Поиски в интернете не дали результатов, некоторые умники пишут что мол железо устаревает, приложения едят больше ресурсов... но это не так, так как эксперимент показывает что с одним и тем же набором приложений и с одной и той же версией ОС телефон работает коллосально по-другому! (я говорю про то что если поставить ту же ОС с теми же приложениями то всё работает молниеносно)
    Не бейте себя так в грудь, это вполне может быть ибо третий раз вы OC не переустанавливали. Когда надумаете переустановить Android, то смотритите что бы версия подходила к вашему телефону.
    Самый лучший вариант купить новый телефон, если конечно хотите и можете себе это позволить.
    Ответ написан
    5 комментариев
  • Какая идеальная страна для айтишника?

    xtala
    @xtala
    Постигает Дзен
    Очевидно, что та в которой вы находитесь в данный момент.
    И не стоит забывать что:

    Человек нигде не находящий себе места ожидает всё от места и ничего от себя.

    - Сьерен Кьеркегор
    Ответ написан
    1 комментарий
  • В каком классе писать код для взаимодействия с кнопкой?

    @Axe98
    Junior Programmer
    Создай глобальный объект типа View и вначале onCreateView присвой к нему то, что сейчас возвращает эта функция, чтобы дальше в теле класса юзать его.

    View tabView;
    .......
    /// onCreateView begin
    tabView = inflater.inflate(R.layout.tab_three, container, false);
    .......
    return tabView;
    /// onCreateView end


    И дальше юзай так:
    Button btnOk = (Button) tabView.findViewById(R.id.any);
    btnOk.setText("ok");
    Ответ написан
    Комментировать
  • Как создать библиотеку на go и использовать через php?

    @RidgeA
    Я бы предложил ту часть, которую надо написать на go, сделать отдельным сервисом, куда обращаться по http api.
    варианты с компиляцией в dll, транспиляцией в js и расширением для php мне кажутся не очень удачными.
    Ответ написан
    9 комментариев
  • Как зафиксировать положение объекта?

    @slavenski
    Android developer
    Все просто, почитайте документацию про виды layot, у вас видимо самая новая - constraintlayout, в ней все завязано на привязке объектов, обратите внимание на точки у ваших объектов (когда выделяете в режиме Design, появляются 4 белые точки, вот их нужно привязывать к чему-то, можно к другому объекту, можно к границам активности), привязывайте их к конкретным местам, и будет вам счастье)

    Вот вам ссылочка, где более правильно все описано, и для начинающих)
    startandroid.ru/ru/uroki/vse-uroki-spiskom/489-uro...
    Ответ написан
    Комментировать
  • Куда можно пойти на стажировку?Где взять опыт?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    Зачем вам стажировка, у вас же там был "свой проект", под руководством наставников и тд, разве не?
    Вот теперь пора идти устраиваться - к томуже гигБрейнс в рекламе свой заявляют, что устраивают на работу (гарантированно), так что вы считай уже успешно вкатились.
    Ответ написан
    1 комментарий
  • Как писать на андроид в notepad?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    На Хабре есть статья об этом - "Пишем, собираем и запускаем HelloWorld для Android в блокноте".
    Ответ написан
    1 комментарий
  • Какой фреймворк выбрать в качестве альтернативы django?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    В django и так многое упрощено. Вы работаете не с базой напрямую, а через ORM оперируя моделями как сущностями.
    Естественно если меняете структуру моделей - то делаете миграции - это всего-то пара команд.
    Если хотите еще проще - тогда наверное вам стоит готовые движки брать - вроде того же Wordpress-а.
    Flask будет сложнее для вас, так как многие вещи придется прикручивать отдельно.
    Ответ написан
    Комментировать
  • Какой фреймворк выбрать в качестве альтернативы django?

    @Bjornie
    Изучаю Python
    В фреймворке уже многое сделано за тебя, а тебе хочется чтобы фрейм за тебя еще и работу заказчика выполнял? :)

    Django это лучший фреймворке на Python, который уже в разы ускоряет разработку, а капризы вроде "не хочется постоянно писать в url.py" это разовые вещи, на которую можно потратить 30 секунд из всего времени разработки.
    Т.е. указать url для view и прописать какая въюха будет обрабатывать запросы на этот url. Так что заканчивайте капризничать))

    Миграции тоже не нужно сделать так часто. Подумали какая у вас модель - создали поля - сделали миграцию. Если типы для полей выбрали правильно, если все подходят, то до миграций больше дотрагиваться будет не нужно. Разве что в следующие изменения, о которых вы не подумали изначально. Но это прям такая операция, которая делается каждые 10 минут (сарказм) :)
    Ответ написан
    1 комментарий
  • Стандарты разработки веб-приложений в Django-проектах?

    @Bjornie
    Изучаю Python
    Toha96Toha сам не столь давно разрабатываю приложения на Django. Сразу начал писать боевые проекты заказчику и естественно возникло вопросов (потому-что в общем то пришлось писать совсем не бложик). За последний проект возникло куча вопросов и пришлось очень много гуглить и задавать вопросов (можешь сам увидеть в меня в профиле).

    Поэтому могу сказать следующее: читай документацию. Последнюю версию. Можешь даже скачать .pdf и распечатать ее, когда есть свободное время чтобы посмотреть что там у Django есть под капотом.

    Потом есть отличная книга Two scoops of Django. В ней собраны как раз Best Practices по разработке на этом фреймворке. Книга очень полезная. Но документация стоит выше. Вначале начинай с нее.

    По-поводу FBV и CBV (Class-based views) - найди на Youtube очень полезную серию видео Django CBV Uncorked, где парень (на английском) разбирает все виды Views, когда ты их пишешь на классах, параллельно программирует свой блог, и разбирает "кишки" Джанги. Очень полезно.

    Шишек набил очень много. Но чем больше будешь писать, тем лучше начнешь всё понимать. Советую открыть документацию и сразу начать делать какой-то свой проект. Чем сложней он будет, чем больше вопросов появится - тем лучше.
    Ответ написан
    4 комментария
  • Любые фотографии ВК доступны просто по ссылке?

    Перебрать ссылку нереально. Раз у вас есть ссылка, значит у вас был доступ к фотке. А раз был доступ, то вы итак могли сохранить фото на комп без всяких ссылок.

    Итог: никакой уязвимости нет.

    PS. Для перебора всей базы нужно перебрать примерно 64^11 * 16^5 * 10^9 * ~10^5 = 7.73 * 10^39 вариантов. Если перебирать по 100 млн в секунду, то на это понадобится 2453426 320882048 046080519 лет (2 септиллиона лет, т. е. 2453 секстиллиона или 2453426 квинтиллионов).
    Ответ написан
    3 комментария
  • Где найти удаленную стажировку для новичка PHP?

    Maksclub
    @Maksclub Куратор тега PHP
    maksfedorov.ru
    Мне 27, влился за полгода
    только дома, стажировок нет, еще меньше чем джуниорской работы, а ее очень не много, все нужен мидл, просто готовы подучить...

    Дома занимайтесь, изучите язык, обязательно ООП, обязательно окружение (Линукс, Композер, ГИТ) + изучайте потихоньку фреймворк (любой из Yii2, Laravel, Symfony)
    Ответ написан
    Комментировать
  • Продажа открытого кода php, как защитить от перепродажи?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    заказчик собрался массово продавать его в открытом виде, вопрос можно ли как то адекватно защититься от перепродажи?
    От перепродажи кем? Заказчиком или тем, кто купит "это" у заказчика?

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

    Далее начинается самое интересное, некий "коллапс и хаос" под названием "попытка защитить исходный код". Вариантов тут много, и каждый из них убог по своему:
    1. Обфусцировать код (т.е. превратить его в "нечеловеко-читаемый") - что в свою очередь добавит некоторого геморроя разработчикам, при поддержке такого кода и пару лишних часов работы с отладчиком тем, кто будет это "взламывать"
    2. Воспользоваться каким-нибудь "страшным" обфускатором, аки IonCube и ему подобными, что в свою очередь даст куда большую степень защиты и отобьёт желание у многих "кулхацкеров" копошиться с Вашим кодом, а заодно и желание у многих других делать с Вашим кодом вообще что-то, в т.ч. попытаться установить/запустить его у себя на сервере/хостинге, т.к. для его работы понадобиться ещё довольно приличный "хвост" всякого дерьма софта, который позволит Вашему коду запускаться.

    как это реализовано например в Битрикс?
    В битриксе это реализовано с помощью:
    0. Регистрации юридических прав на свой продукт
    1. Обычной обфускации
    2. Агрессивного маркетинга
    3. Откатов тем, кто продаёт битрикс (аки "партнерское вознаграждение", кажется это так сейчас называется)
    4. Ну и далее там идут всякие ключи и т.д., т.е. общая база, в которой регистрируются все установки системы, из которых не выпилен механизм который отправляет на сервера "битрикса" сведения об установке (и прочая лабуда в таком духе)

    P.S. Ну и, разумеется, стоит помнить, что ломают и куда более сложные/совершенные экземпляры ПО, такие как "Photoshop" или "Windows", а так же то, что в современно мире важен не столько сам софт как таковой, сколько его поддержка (исключения разумеется есть, но это частные случаи). Лишите операционную систему или например, антивирус - возможности обновляться и скоро из "лидера рынка" они превратятся в "почти никому не нужный хлам". Если дальше философствовать на эту тему (почему "палёный Windows обновляется" или "почему Linux полностью бесплатный, включая обновления/поддержку") - можно целую книгу или докторскую диссертацию на эту тему написать... но, думаю смысл в общей сложности и так понятен :)
    Ответ написан
    Комментировать
  • Где можно практиковаться в программирование на С++ и Java?

    @red-barbarian
    -возьмите свои старые тексты и разберитесь в них. как бы сейчас переписали. все ли понятно. как написать что бы все было понятно с первого взгляда. перепишите их.
    -возьмите текст библиотеки которую применяете. изучите часть. перепишите аналог.
    - читайте тексты плохие и хорошие. что хотелось бы изменить? что понравилось.
    - напишите простую sql базу
    - напишите консольную игру квест.
    - изучите tdd, solid
    - проанализируйте свои тексты, попробуйте выделить части которые можно переиспользовать. перепишите их.

    !тренируйте чтение больше чем писание)
    Ответ написан
    Комментировать
  • Где можно практиковаться в программирование на С++ и Java?

    AlexXYZ
    @AlexXYZ
    O Keep Clear O
    Я не поклонник А. Лебедева, но иногда он говорит правильные вещи. Например, по поводу "Вышлете мне тестовое задание?" Он говорит - "а придумайте его сами!" Так и вообще с задачами. Нужно увидеть задачу. Точнее увидеть, как с помощью программирования вы можете перевести проблему из некоторого нерешённого состояния в решённое. В жизни задача никогда не скажет вам, что "вот она я, задача" и добровольно отдаст своё решение.
    Когда я занимался легкой атлетикой, то думал, что есть два состояния, одно, когда я тренируюсь, а второе, когда я выступаю. Тренер мне объяснил, что состояние только одно - тренировка. Только на соревнованиях выкладываешься больше. Это вообще изменило моё отношение к поиску задач.
    Если вы считаете, что способны решить задачу, то разве вы не способны её придумать? Каждая задача - это проверка своих возможностей, вызов. Если вы не работаете над решением задачи в таком ключе, значит вы неправильно и занимаетесь и работаете, т.к. нет развития.
    Ответ написан
    Комментировать
  • Как организовать адаптивное SPA приложение?

    в настольной версии это вообще один экран с единственным урлом
    В этом ваша ошибка - если это SPA, то у каждой "страницы" всё равно должен быть свой URL. Тогда и проблема ваша разрешится.
    Ответ написан
    2 комментария
  • Почему в silex framework нет папки контроллеров?

    @TexElless
    Backend-разработчик(преимущественно PHP и Symfony)
    У Silex'а нет строгой структуры "из коробки", у нас в проде вполне живет проект с роутингом прям в index.php, а внутри роутов просто дергаются методы нужных сервисов. Что-то вроде такого:
    $forecast = $app['controllers_factory'];
    $forecast->get('/calculations', function (Request $request) use ($app) {
        $data = new \App\Services\ForecastService($app['db'], $request, $app['user']);
        $return = $data->getForecastCalculations();
    
        return new JsonResponse((array)$return, 200, ['access-control-allow-origin' => '*']);
    });
    $app->mount('/forecast', $forecast);
    $app->after($app['cors']);
    
    $app->run();


    Если нужно усложнение логики - можно из роутинга вызывать нужный контроллер, внутри него уже дергать нужное количество сервисов, подготавливающих ответ. При этом где будут храниться сервисы, контроллеры, модели и будут ли они у вас вообще - исключительно ваше дело. Можно делать по аналогии с другими фреймворками (Laravel-style, Symfony-style), можно придумать что-то своё, главное поддерживать единообразие, чтобы потом самому в этом не запутаться.
    Ответ написан
    Комментировать