Free React For Beginners
3.46K subscribers
231 photos
5 videos
1 file
385 links
💻 Про #React та #frontend та #веб розробку
🧑‍🎓 Для початківців і не тільки

👉 https://www.youtube.com/@reactdev
Download Telegram
😍З днем незалежності всіх нас! 😍

Нехай, через рік, ми будемо святкувати цей день, вже з перемогою!
85🕊7🎉4🍾2❤‍🔥1🥰1
А що тут скажеш?)
👍63🔥194
❤️ Дякую за таку теплу підтримку - тепер подробиці❤️

Курс будемо робити як і минулий - в дві ітерації. Спочатку коротка версія, потім, за необхідності, розширена, але формат буде іншим:

- Довжина відео - мінімальна, буду триматися між 5 та 20 хвилинами
- Кожне відео присвячено одному і лише одному аспекту
- Всі відео записані* (так це довше, але воно того варте)
- У відео дві частини (за деяким виключенням) - спочатку коротка теорія, потім коротка практика
- Під час всього курсу робимо один проект - спрощений блог

🧱 Зараз працюю над програмою, про це буде пізніше. Ви зможете її переглянути і, навіть додати власні побажання. Всі матеріали відкриті, так що за бажанням зможете долучатися та приймати участь.

По часу - не швидко. Плюс я хочу спочатку зробити хоча б чотири відео, а вже потім їх викладати.

❗️Найголовніше - є бачення як це зробити і бажання.

Тож, шановні, пора до справи. Скоро побачимося!

* Прямі ефіри за шоколапки :)
78👍21🔥13🤔1
Itera Open Day відбувся!

Як вам офлайн?

П.М. Більше танцювати не буду 😂
👍25🔥54🎉2
Оцей <Image/> з Next.JS класна штука

👉Він автоматично регулює вагу зображення
👉Сам визначає width та height і мені більше не треба з цим мучитися
👉Автоматично додає йому lazy, щоб не вантажити зображення які користувач поки не бачить

Круто правда?

❗️Але є два нюанси (ну завжди є нюанс)

😢 По-перше: Image не працює якщо ви хочете експортувати Next.JS в статичний сайт
😢 По-друге: не забувайте додавати priority атрибут для головного зображення на сторінці, бо може так статися що він буде ліниво вантажитись, а це не добре.

Хтось вже пробував цю чуду-юду?

@reactbeginners
👍28🔥7🤔3
Ну так і є)
Правда не скажу що все це він робить добре 😁
😁39👍6💯6🤯2🤩1
Нагадую - створювати компоненти в середині компонентів погана ідея.

✍️ Хоча це інкапсуляція (добро), але з точки зору реалізації React це зло, і воно суттєво переважує.

Всі ж знають чому?

П.М. На зображенні - оригінальна версія матрьошки - та яка з Японії.
👍151😁1
Розповідаю звідки пішли ноги, і чому ці ноги геть зовсім криві.

✍️ Як ви знаєте, в JS інкапсуляцію не завезли by design. Раніше навіть не було можливості робити приватні поля, тому всі писали _xxxx і молились аби ніхто такі поля просто так не чіпав.
До речі, оця конструкція - функції, яка викликає сама себе (function () {})(); теж пішла з бажання сховати всі внутрішні змінні і не смітити ними в глобальному об'єкті window.

😊 З часом ситуація покращилася, з'явилися ES модулі, які автоматично ховають все, що не експортується і не додають свої змінні в window. Але, залишилась інша проблема - глобальність експорту. Якщо ви експортуєте якийсь шматок коду - імпортувати його може хто завгодно. А це погано, тому що ваш компонент можуть почати використовувати інші і от він уже приймає 100500 пропсів аби задовольнити усі примхи.

🧐Тому дехто вирішив вдаритися в крайнощі і почав ховати компоненти, в середині компонентів, тому що export звідти буквально не можливий. Такий собі спосіб сказати - цей компонент лише мій і навіть не думай його чіпати. Власне такі конструкції можна побачити в C#, коли клас створює під клас в середині себе і там це все цілком ОК і ніхто не дивується.

👉 Але з React є мааааанюнький такий нюанс розміром десь з Ейфелеву вежу:

❗️Коли React визначає, які зміни сталися в застосунку, він порівнює, в тому числі класи або функції компонентів. А, в цьому підході з інкапсуляцією, на кожен рендер буде створюватися новий клас або функція-компонент. Коли React таке бачить - він вважає зміни настільки значущими, що повністю видаляє старий компонент і монтує туди новий. Зрозуміло, що це не ефективно з точки зору роботи з браузером, але це ще пів біди. Другі "пів біди" полягають в тому, що стейт внутрішнього компоненту також знищується! Відповідно такі компоненти ще й фактично поламані! 😃

🤷 Ось такі ситуації виникають, коли хочеться як краще, але з бібліотекою до кінця не розібрався.

Всім гарних вихідних і готуйте гроші на наступний тиждень. Буде збір і буде дуже крутий лот на розіграш (таких в Україні може штук 5 є)

@reactbeginners
20👍9🤔5🤯3
Поки я деплою учбовий Next.JS застосунок на Azure, хочу вам показати один пост, який хоч і не стосується React, але дуже стосується нашого майбутнього.

Я дуже, дуже хочу щоб ми всі зрозуміли один простий факт:

- Або ми разом, або нас не буде.

Всім добра та сил.
❤‍🔥46👍93
👉 Відкотити останній коміт, який ще не запушив:

git reset HEAD~1

👩‍🏫 Ця команда видалить останній коміт, при цьому всі зміни які ви в ньому зробили залишаться. Буде стан наче ви зробили роботу, але ще не закомітили.

💡Може бути корисно якщо хочете додати щось в коміт або змінити текст, але amend використовувати не хочете.

П.М. І так, я задеплоїв)
34🔥10👍91😁1
Якщо вже мова зайшла про гіт - то ось ще один трюк

👉 Гіт має аліас для попередньої гілки: -

Наприклад git checkout - поверне вас до попередньої гілки, а git merge - змерджить попередню гілку в поточну. Відповідно можна зробити такий трюк (повершелл)

git checkout dev; git pull; git checkout -; git merge -;

💪 І все, за хвилину маємо оновлений дев і оновлену поточну гілку. Просто і без зайвих рухів

@reactbeginnes
🔥39👍10❤‍🔥21
Я не так часто роблю збори, тому прошу прочитати до кінця.

У мене є колега - цілком собі звичайний React розробник, який так само як і я любить сноуборд і якого я знаю вже сім років. Але є один нюанс - сьогодні він воює у складі роти ударних безпілотників 82 ОДШБр і зараз вони знаходяться на дуже і дуже зубастому напрямку.

Як ви вже здогадалися з назви - їм потрібні дрони і бажано побільше. Якщо у них дрони є - вони можуть працювати. Якщо дронів немає - 🙅. Особливо актуально це під час наступу. Власне, якщо ви колись думали, як би прискорити наступ - цей збір саме про це:

Збираємо на два FPV дрони - 45_000 гривень до кінця наступного тижня

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

👉 Перший лот - книга "JavaScript - сильні сторони", особисто підписана для мене її автором - Дугласом Крокфордом, легендою JavaScript, який колись відвідував Київ. Про нього достатньо сказати, що JSON форматом ми завдячуємо саме йому. Не думаю що таких книг, на сьогодні дуже багато.

👉 Другий лот - також книга - Чистий Код Роберта Мартіна, в цей раз без підпису. Але вона буде корисною для будь-якого розробника, в цьому у мене немає жодного сумніву. За бажанням можу підписати, хоч це навряд чи буде нести якусь цінність 😁

👉 Третій лот - більше утилітарний, але теж корисний: чохол для ноуту 15'' + термочашка від Itera.

❗️Перший лот отримає той хто пожертвує найбільшу суму.
❗️Другий і третій лоти будуть розіграні серед усіх учасників хто внесе від 50 гривень. Кожні 50 гривень - додатковий шанс отримати подарунок.

ЗБІР ЗАКРИТО

Будь-ласка, не забудьте вказати в коментарі до внеску контакт як з вами зв'язатися.

Всім дякую за участь та поширення. Поширення також дуже важливе!
@reactbeginners
🔥18👍157
Free React For Beginners pinned «Я не так часто роблю збори, тому прошу прочитати до кінця. У мене є колега - цілком собі звичайний React розробник, який так само як і я любить сноуборд і якого я знаю вже сім років. Але є один нюанс - сьогодні він воює у складі роти ударних безпілотників…»
Free React For Beginners
Якщо вже мова зайшла про гіт - то ось ще один трюк 👉 Гіт має аліас для попередньої гілки: - Наприклад git checkout - поверне вас до попередньої гілки, а git merge - змерджить попередню гілку в поточну. Відповідно можна зробити такий трюк (повершелл) git…
Останній трюк з гіт

💡Окрім стандартних аліасів, гіт дозволяє робити свої , наприклад, якщо ви втомилися писати checkout можна створити свій аліас:

git config alias.co checkout

💪Тепер вам достатнього написати git co feature/drones і ви перейдете на гілку feature/drones. Також ви можете додати параметер --global і тоді цей аліас буде доступний в усіх локальних репозиторіях. Є правда один нюанс - аліасом не можна поділитися через git, тому, можете викладати на gist. І людям користь і ви не втратите.

👉 Але, саме чудове в них те, що ми можемо поєднати декілька команд в один аліас. Наприклад, мою серію команд з попереднього посту:

git config --global alias.sync "!git checkout dev && git pull && git checkout - &&  git merge -"

😎І все! Тепер просто git sync і далі воно само, а ви можете пити каву)

Хіба це ж не краса? Якщо зацікавились - посилання на документацію, та посилання на більш детальний пост на ItJuniors про це

П.М. подивитись всі ваші аліаси можна в ./.git/config
П.М.М Сьогодні будуть проміжні результати збору - якщо коротко - ви неймовірні!

@reactbeginners
👍224❤‍🔥3
UPD: ЗБІР ЗАКРИТО!
Проміжні підсумки збору на 2 FPV для 82 ОДШБр

❤️ За першу добу ви зібрали 34_500 гривень, або 76%! Це дуже круті результати - фактично, півтора дрони вже є залишилось зовсім трохи. ❤️

Тепер по претендентах на книжку:

1️⃣ 8888 - Ігор Цв. (знаю)
2️⃣ 5000 Олексій Андрійович Вил. (не знаю 😢)
3️⃣ 2222 Ігор Ол. (знаю)

Я думаю буде справедливо, якщо 2 та 3 місця зможуть також замовити напис на дроні, за бажанням звісно.
Тому, Олексію, якщо ти це читаєш - напиши мені в ПМ будь-ласка.

❗️ Важливий момент - я ще не складав повний список благодійників, але вже бачу що багато хто переказує гроші без зазначення контактних даних. Якщо це навмисно - ОК, якщо просто забули - обов'язково мені напишіть! Можна просто в ПП.

До-речі, дрони вже замовлені, тепер питання лише в оплаті і транспортуванні. А на фото - наша попередня доставка, яку ми робили на мій ДР.

Всім добра, продовжуємо збирати далі, залишилось не багато.
👍25
😅 Скажу відверто - я не дуже вмію в анімацію. Максимум - це transition, keyframes то вже складно, а 3D анімація то взагалі. Отой куб що ви бачили - все на що я спроможний разом з гуглом 😁

😎На щастя, не всі такі слабенькі як я і, також, на щастя є люди які готові цим умінням ділитися. Тому, запрошую вас до того хто на цьому розуміється і може показати як це робиться за допомогою JS: DOU livecoding з Юрієм Артюхом. Створення 3D анімації

👉Подія відбудеться 12 вересня (вівторок) о 19:00 тут (телеграм канал)

Приходьте, має бути цікаво!
👍19🔥51
Що ж шановні - це кінець тижня і гарний час сказати всім дякую.

👉 Дякую тим хто донатив по 50 гривень. Не буває маленьких донатів, а часом і 50 гривень буває важко знайти.
👉 Дякую тим хто донатив більше за довіру та щедрість.
👉 Дякую тим хто репостив і лайкав - не буває маленької підтримки.

🍺Особлива подяка BeerJS Житомир, якому, до-речі, виповнюється шість років, тож не забудьте їх поздоровити!

❤️ А ще хочу окремо подякувати за розуміння. За те що ніхто не написав, що "два дрони нічого не змінять". За те що ніхто не сказав - "чому я маю віддавати свої гроші, коли яйця по 17 гривень". За те, що ніхто не сказав що це не потрібно. Дякую всім вам!

Тепер про результати:

Зібрали: 49280 гривень
Долучилося: 58 людей
Найбільший донат: 13_000 гривень від пані Марини Д. Будь-ласка, вийди на зв'язок, тебе чекає книга Дугласа Крокфорда з його особистим підписом!
Друге місце: - Ігор Ц. - 8_888
Третє місце: - Олексій Вил. - 5000

❗️ Ігоре, Олексію - якщо є побажання щодо напису на дроні - прошу в ПП.

Розіграш другої книжки - "Чистий код" Роберта Мартіна (до-речі видання 22 року, свіженьке), а також мерчу, буде наступного тижня, відео я викладу прямо сюди, тож очікуйте 😀

✍️ Звіт буде обов'язково, як тільки буде підтверджено отримання дронів. Думаю теж до кінця тижня маємо впоратися.

Ще раз дякую, бережіть себе і скоро побачимося.
25🔥5
💪Вийшов мажорний реліз Bun - нового runtime для JavaScript

😎 Обіцяє тону бонусів - від нативної підтримки TypeScript та TSX до бандлінга та пакетного менеджера та вбудованої бази даних. І все це зі швидкістю світла. Робимо завтра ефір для огляду?
Anonymous Poll
57%
Так
40%
Так, але що таке runtime?
3%
Нє
👍61🔥1
Bun - випробовуємо новий runtime для JavaScript

Коли
: В понеділок, 11.09.23 о 19:00
Де: YouTube канал
Програма:

👉 TypeScript
👉 Тести
👉 React

Плюс проведемо розіграш призів за попередній збір 😊

П.М. Дякую всім причетним за нову обкладинку)
👍257