Как быстро кодить?

  Рет қаралды 2,224

Лёха Объяснит

Лёха Объяснит

Күн бұрын

Часто бывает так, что во время набора кода возникают какие-то опечатки, постоянно тратишь время на то, чтобы вспомнить, откуда импортировать тот или иной класс. В итоге вместо того, чтобы сфокусироваться на логике работы программы, тратишь время и силы на какие-то маленькие, но очень многочисленные операции. Как результат, на решение задачи тратится больше времени, а к концу дня чувствуешь себя, как выжатый лимон. Но в этом видео я расскажу, как не отвлекаться на рутинные операции, и как значительно ускорить свою работу.
00:00 - Введение
02:30 - IDE
05:26 - Как приручить автокомплит
08:55 - Нэйминг и автокомплит
09:48 - Импорт и use statements
10:47 - Типы переменных и автокомплит
14:22 - Пишем грамотно
17:48 - Плагины для IDE
18:37 - Генераторы кода
22:57 - Используем мозг
24:28 - Ускоряем поиск
28:46 - Заключение

Пікірлер: 24
@EvgenOl
@EvgenOl 7 ай бұрын
Спасибо за видос. Я вроде и пользуюсь автокомплитом, но узнал много нового.
@PinoSych
@PinoSych Жыл бұрын
Леха, красава, один из самых интересных каналов. Надеюсь не забросишь
@neverlanddeepinside7273
@neverlanddeepinside7273 10 ай бұрын
У вас очень фактурный кот
@pavel-smetana
@pavel-smetana Жыл бұрын
Мне определенно нравится тут на канале))
@andreybalin9314
@andreybalin9314 Жыл бұрын
"просишь автокомплит, но делаешь это без уважения" 🔥
@alexeyb.
@alexeyb. Жыл бұрын
Леха, пиши себе тезисно какие то моменты, я все видео следил как ты следишь глазами за текстом. А видео полезное, спасибо)
@andreybalin9314
@andreybalin9314 Жыл бұрын
Алексей, видео классное, но не расскрыты ещё несколько методов и инструментов. Для редактирования кода и подготовки названия полей, переменных и т.п. (иногда нужен не массив vars, а именно var_1, var_2...). 1. MSWord - поддерживает поиск и замену в том числе спец.символов (перенос строки, табуляция) - теперь редко пользуюсь, часто делаю через VSCode. 2. MSExcel - позволяет генерировать (путём растягивания ячеек) схемы данных, sql-запросы, список полей или параметров имеющих некоторую структуру. 3. С уважением отношусь к выбору различных IDE (некоторые конечно платные + тяжелые + жрут как не в себя), но для разработки (web, BigData, Docker - для любой разработки) последние 5 лет использую VSCode (или Codium). Причины (если мы говорим о скорости набора кода) VSCode: 1. Для web-верстки поддержка Emmet из коробки (поддержка bootstrap или еще чего-то через расширения). Сюда же наборы снипетов и легкая возможность добавлять свои снипеты для различных языков. 2. Самый лучший мультикурсор из коробки (не в Npp, ни в других IDE такого не видел). Ctrl+d - выделяет одинаковые слова или набор символов (5 пробелов можно выделить, или пробел и кавычку) и ставит мультикурсор. Ctrl+Shift+L - тоже самое, только сразу все в файле. Shift+alt+"выделяем мышью" - колончатое выделение + мультикурсор. Shift+alt+I - в выделеном тексте ставит мультикурсор в конец строк. Мультикурсором можно управлять: Home, End, вверх, вниз и т.п. Если есть список из 5 строк и к нему нужно добавить в конец строк или в середину данные в виде других 5 строк (не одинаковых) - то это делается через мультикурсор просто через ctrl+v. Мультикурсором можно: перечень полей (хоть 100 штук) был в столбик, сделал его в строчку через запятую, и потом обратно при необходимости. Если ты начуился пользоваться мултикурсором, то ты начинаешь им думать и используешь его везде, даже принаписании писем в аутлуке. Свежий пример, было задание: в эксель файле описаны 50 таблиц (1700 полей с различными типами данных) - по ним нужно составить схемы (50 схем) на языке PySpark (python), т.е. оформить эти поля в виде кода. При помощи мультикурсора я сделал эту работу меньше чем за 1 час (без использования каких то заготовок, макросов и прочего). 3. Горячие клавиши и фишки по-дефолту: Ctrl+k+x - удаляет все пробелы в конце строки (нужно при подготовке списка, например полей таблицы) alt+/ - выделение от скобки (любой) до скобки, когда надо заменить одни 30 слов, на другие 40 слов, но чтоб остальной текст не изменился, только то, что в скобках. Shift+alt+"стрелка вниз/вверх" - копирование строки или нескольких строк. Выделил и горячая клавиша, в место контектсного меню - копировать/втавить. Подсвечивает в каждой строке автора и время последнего коммита (можно перейти git и посмотреть подробности). Удаленная отладка, работа с докером, работа с СУБД - через расширения, почти все бесплатные или с ограниченным числом подключений. 24:52 - VSCode есть дополнение, которое при вызове функции выводит в полупрозрачном окне его определение, а если кликнуть, то локально во встроенном фрейме открывает код функции с возможностью редактирования.
@andreybalin9314
@andreybalin9314 Жыл бұрын
Единственное в VSCode под Linux (или Mac) некоторые горячие клавиши нужно донастраивать, но под Win из коробки горячие клавиши работают отлично.
@alex-will-explain
@alex-will-explain Жыл бұрын
Хорошее дополнение, но это уже больше относится к работе с текстом, а не конкретно с кодом. При работе с данными это очень часто бывает нужно. Но в программировании с этим сталкиваешься далеко не каждый день. А в этом выпуске я сделал акцент именно на автодополнении, чтобы показать, как оно помогает в работе даже с незнакомыми API, когда даже не читая документацию можно вызвать целую цепочку методов, которая сделает как раз то, что требовалось.
@andreybalin9314
@andreybalin9314 Жыл бұрын
@@alex-will-explain мультикурсор использую именно в коде каждый день. Например, в Laravel нужно ограничить список выводимых полей из таблицы БД. Я не буду руками переписывать поля таблицы (30 штук) из клиента СУБД (или документации). Я их скопирую, вставлю и оформлю через мультикурсор в виде массива(словаря) или другой сложной JSON-структуры.
@alex-will-explain
@alex-will-explain Жыл бұрын
@@andreybalin9314 блин, крутая штука этот мультикурсор, никогда не пользовался, надо попробовать, спасибо!
@andreybalin9314
@andreybalin9314 Жыл бұрын
@@alex-will-explain обязательно попробуй 😃 Нужно сделать 5 слушателей $(document).on(элемент,click) Просто делаешь 5 строк заготовок, потом копируешь откуда то список id (селекторов) и через мультикурсор вставляешь. Таким образом избавляемся от опечаток, и очень быстро оформляем код.
@katesmith2371
@katesmith2371 Жыл бұрын
😲😲😲😲👏👏👏👍
@vanish1987
@vanish1987 Жыл бұрын
Леха, подскажи какой у тебя в шторме статический анализатор? Или про это будут отдельные видео?
@alex-will-explain
@alex-will-explain Жыл бұрын
Вот этот: github.com/kalessil/phpinspectionsea Отдельных видео на этот счёт пока не планирую. Я просто когда-то давно поставил его и всё))
@vanish1987
@vanish1987 Жыл бұрын
@@alex-will-explain спасибо, поставил! А подскажи еще как ты избавился от лишних варнингов типа "Qualifier is unnecessary and can be removed" по отношению к \Drupal:: или "unused declaration" по отношению к хукам.
@alex-will-explain
@alex-will-explain Жыл бұрын
@@vanish1987 наводишь мышкой и появляется опция "remove unnecessary qualifier", если нужный use уже добавлен, а если он ещё не добавлен, то появится опция "replace with an import". Кликаешь на неё и всё ок. Сама всплывашка появляется именно при наведении на подчёркнутую часть строки. А вот на хуки у меня ничего не ругается. Да, они серого цвета, как будто неиспользуемые, но шторм не предлагает с ними ничего делать
@vanish1987
@vanish1987 Жыл бұрын
@@alex-will-explain я не про use statement, а про статические вызовы сервисов, например. На них ругается, мол слэш не нужен. У тебя может отключен варнинг на неиспользуемые функции, раз не ругается на хуки?
@alex-will-explain
@alex-will-explain Жыл бұрын
@@vanish1987 у меня наоборот, без слэша ругается)) Если в классе вызвать без слэша, то фатал ведь будет. И я на этот счёт точно ничего не настраивал. Два года назад менял комп, ставил всё с нуля, точно помню, что ничего дополнительно не настраивал. Но в Drupal проектах просто включен Drupal support.
@EvgenOl
@EvgenOl 7 ай бұрын
Возник вопрос: а если IDE не находит определние класса, это кривой фреймворк? Или что то донастроить надо? При этом поиск покоду находит таки определение класса.
@alex-will-explain
@alex-will-explain 7 ай бұрын
Разные ситуации бывают. Если раньше находил, а потом перестал, то может быть индекс переглючило. Например, в phpstorm на этот случай есть кнопка Repair IDE. Ну и на крайний случай можно снести папку .idea, чтобы потом всё заново переиндексировалось. Если же классы изначально не находятся, то чаще всего это решается установкой плагина для фреймворка. Если плагинов нет, то тогда остаётся только гуглить либо документацию, либо какие-то обсуждения этой темы. Возможно, надо только что-то настроить.
@paleface_brother
@paleface_brother Жыл бұрын
Да, порой автокомплит напоминает автозаполнение на мобильнике 🙃
@alex-will-explain
@alex-will-explain Жыл бұрын
Надо вникать, где именно он не устраивает, и пытаться разобраться, почему так. Но в целом всё напрямую зависит от строгости типизации. К примеру, я замечал, что на php автодополнение работает значительно лучше, чем на js. Но при этом на реакте автодополнение значительно лучше, чем на ванильном js.
Мифы о PHP
10:33
Лёха Объяснит
Рет қаралды 7 М.
Docker изнутри. Логи, сети, volumes
12:31
Лёха Объяснит
Рет қаралды 1,3 М.
I wish I could change THIS fast! 🤣
00:33
America's Got Talent
Рет қаралды 84 МЛН
Can You Draw A PERFECTLY Dotted Line?
00:55
Stokes Twins
Рет қаралды 76 МЛН
Became invisible for one day!  #funny #wednesday #memes
00:25
Watch Me
Рет қаралды 9 МЛН
Мусорные пакеты. (NPM, Composer и др.)
25:24
Лёха Объяснит
Рет қаралды 479
Графические приложения Ubuntu в WSL
10:33
Valentin Arkov
Рет қаралды 428
فلاد ونيكي - أفضل القصص عن ألعاب الأطفال
15:36
Vlad and Niki Arabic
Рет қаралды 60 МЛН
Мифы об операционных системах
32:03
Лёха Объяснит
Рет қаралды 2,6 М.
Как работают сайты
16:04
Лёха Объяснит
Рет қаралды 764
React, Vue, Angular - что это и зачем это нужно?
9:44
Лёха Объяснит
Рет қаралды 853
WSL2: Запускаем полноценный Linux на Windows
14:55
Лёха Объяснит
Рет қаралды 20 М.
I wish I could change THIS fast! 🤣
00:33
America's Got Talent
Рет қаралды 84 МЛН