🕹Создаем ИИ в игре на JavaScript
Screeps — игра-песочница, в которой нужно создавать искусственный интеллект для ваших персонажей на JS.
Тем самым вы можете управлять вашими войсками, чтобы проходить эту игру.
Перейти к изучению
#javascript
▶️Ловите ссылку на лекцию про техническое интервью для начинающих front-end разработчиков.
Инженеры DSR провели лекцию для молодых специалистов во время Дня карьеры факультета ПММ Воронежского Государственного Университета.
Дмитрий Севостьянов, выпускник Учебного центра компании, поделился своим опытом, а Мария Тихонова, преподаватель курса JS Bootcamp. Deep Dive into React, раскрыла секреты успешного прохождения технического интервью.
#dsr_training_center#DSR_career#DSRCorporation#DoingSoftwareRight
#javascript#frontend#webdevelopment#frontenddevelopment
https://youtu.be/wshZIZO_g6I
#JavaScript#API#RealProject#webdev#dasturlash_hayoti
👨💻 JavaScript + API: Real loyiha
Xabarlarni ro‘yxat qilib chiqarish + avtomatik yangilanish
Bu bosqichda:
- har bir xabar alohida chiqadi
- sahifa refreshsiz yangilanadi
- real chatlarga yana yaqinlashamiz
1️⃣HTML — xabar yozish va chat oynasi
<!-- Xabar yozish -->
<input type="text" id="message" placeholder="Xabar yozing">
<button onclick="sendMessage()">Yuborish</button>
<!-- Chat ro'yxati -->
<ul id="chat"></ul>
ul — xabarlar ro‘yxat bo‘lib chiqishi uchun
2️⃣ JavaScript — xabar yuborish va ro‘yxatga qo‘shish
<script>
function sendMessage() {
// Inputni chaqiramiz
let input = document.getElementById("message");
// Inputdagi qiymat
let msg = input.value;
// Bo‘sh xabar yuborilmasligi uchun
if (msg === "") return;
// Serverga xabar yuborish
fetch("https://jsonplaceholder.typicode.com/posts", {
method: "POST",
body: JSON.stringify({ text: msg }),
headers: {
"Content-type": "application/json"
}
})
.then(res => res.json())
.then(data => {
// Xabarni chat ro‘yxatiga qo‘shamiz
addMessage(data.text);
// Inputni tozalaymiz
input.value = "";
});
}
</script>
3️⃣JavaScript — xabarni ro‘yxatga qo‘shish
<script>
function addMessage(text) {
// Chat ro‘yxatini chaqiramiz
let chat = document.getElementById("chat");
// Yangi xabar uchun <li> yaratamiz
let li = document.createElement("li");
// Xabar matnini joylaymiz
li.innerText = text;
// Xabarni chatga qo‘shamiz
chat.appendChild(li);
}
</script>
Endi:
- har bir xabar pastga qo‘shilib boradi
- eski xabarlar yo‘qolmaydi
Telegram, kommentlar, chatlar — barchasi shu mantiqda ishlaydi.
☑️Natija
⏺️JavaScript → foydalanuvchi bilan ishlaydi
⏺️API → server bilan gaplashadi
⏺️Sayt → jonli bo‘ladi
➡️Keyingi post:
Enter bosilganda yuborish + real-time’ga yana yaqinlashtiramiz 🔥
💻@dasturlash_hayoti— dasturchilar hayoti va IT memlari aralash kanal😉
#JavaScript#API#RealProject#webdev#dasturlash_hayoti
➡️Keyingi postda nima bo‘ladi?
Keyingi darsda:
⏺️ xabarlarni bitta emas, ro‘yxat qilib chiqaramiz
⏺️ yangi xabar kelganda sahifa avtomatik yangilanadi
Ya’ni:
❌ refresh yo‘q
☑️ real-time ishlash
Post JavaScript + API asosida, to‘liq real loyiha ko‘rinishida bo‘ladi.
👉O‘tkazib yubormang!
💻@dasturlash_hayoti— dasturchilar hayoti va IT memlari aralash kanal😉
#JavaScript#API#RealProject#webdev#dasturlash_hayoti
⚠️⚠️⚠️
Diqqat, JavaScript o‘rganuvchilar!
Keyingi post:
❌ faqat nazariya emas
☑️JavaScript + API orqali real loyiha bo‘ladi
Ya’ni:
⏺️serverdan ma’lumot olish
⏺️sahifani yangilamasdan ishlash
⏺️hammasi real kod bilan💻
Shunaqa amaliy post kerakmi?
👍 Ha, JS + API bilan
🔥 Yo'q, shart emas
Qiziqish bo‘lsa — bosqichma-bosqich tushuntirib chiqaramiz
#JavaScript#LocalStorage#FrontEnd#JS#Dasturlash
👨💻 JavaScript’da LocalStorage nima va qanday ishlatiladi?
LocalStorage – bu brauzerda ma’lumotlarni saqlash imkonini beruvchi vosita. Saytni yopib ochganingizda ham ma’lumotlar saqlanib qoladi.
Asosiy xususiyatlari:
🔹Ma’lumot string sifatida saqlanadi
🔹Brauzer yopilsa ham o‘chmaydi.
🔹Faqat hozirgi domen uchun amal qiladi.
Eng ko‘p ishlatiladigan metodlar:
// Ma'lumot qo'shish
localStorage.setItem('ism', 'Jonibek');
// Ma'lumotni olish
let ism = localStorage.getItem('ism');
console.log(ism); // Jonibek
// Ma'lumotni o'chirish
localStorage.removeItem('ism');
// Hammasini tozalash
localStorage.clear();
💡 Agar obyekt yoki massiv saqlash kerak bo‘lsa, JSON.stringify va JSON.parse dan foydalaning:
let user = { name: 'Jonibek', age: 20 };
localStorage.setItem('user', JSON.stringify(user));
let getUser = JSON.parse(localStorage.getItem('user'));
console.log(getUser.name); // Jonibek
💡LocalStorage – bu saytlar uchun “xotira” bo‘lib, foydalanuvchi ma’lumotlarini uzoq muddat saqlash imkonini beradi.
💻@dasturlash_hayoti— Dasturchilar hayoti, motivatsiya va IT olamidagi eng foydali maslahatlar shu yerda!
#JavaScript#API#webdev#2post#boshlovchilar
👨💻 JavaScript qayerda ishlatiladi?
2️⃣API bilan ishlash (server bilan muloqot)
JavaScript serverdan ma’lumot olib kelish va uni sahifada ko‘rsatish uchun ishlatiladi. Sahifani yangilamasdan ham ma’lumot keladi.
🌐 Serverdan ma’lumot olish (fetch)
<button onclick="getData()">Ma’lumotni yuklash</button>
<p id="result"></p>
<script>
function getData() {
fetch("https://jsonplaceholder.typicode.com/posts/1")
.then(res => res.json())
.then(data => {
document.getElementById("result").innerText = data.title;
});
}
</script>
☑️ Tugma bosildi → serverdan ma’lumot keldi → sahifada chiqdi
Real-time yangilanish nimaga o‘xshaydi?
📩 Chatda xabar kelishi
📰 Yangiliklar avtomatik yangilanishi
❤️ Like bosilganda soni darhol o‘zgarishi
👉 Bularning barchasi JavaScript + API orqali ishlaydi.
Ma’lumotni sahifada dinamik ko‘rsatish
Serverdan kelgan ma’lumot:
❌ qo‘lda yozilmaydi
❌ sahifa qayta yuklanmaydi
JavaScript:
☑️ o‘zi olib keladi
☑️ o‘zi joylashtiradi
JavaScript + API bo‘lmasa:
❌ sayt sekin
❌ har safar refresh kerak
JavaScript + API bilan esa:
☑️ tez
☑️ jonli
☑️ zamonaviy sayt
💻@dasturlash_hayoti— dasturchilar hayoti va IT memlari aralash kanal😉
#typescript#animation#gesture#javascript#react_native
React Native Reanimated 4 lets you create smooth, high-performance animations in your mobile apps using a simple, web-like approach—now supporting CSS animations and transitions, so you can use familiar syntax and write less code for complex effects[1][2][4]. It only works with the latest React Native architecture, so you’ll need to update if you’re still on the old system, but this ensures better performance and future compatibility. Detailed docs and example apps help you get started quickly, and the library is well-supported by the community and major companies. This means you can build visually impressive, responsive apps faster and with less hassle, just like on the web[1][2][4].
https://github.com/software-mansion/react-native-reanimated
#javascript#gutenberg#wordpress#wordpress_plugin
Gutenberg is a new way to edit and build websites in WordPress. It uses blocks for each piece of content, like paragraphs or images, which can be easily moved around. This makes creating pages visually intuitive and flexible. Gutenberg also offers features like real-time collaboration and a visual interface, making it easier to design unique pages. It's still evolving but offers many benefits, such as responsive design and built-in accessibility features, making your website look good on all devices and accessible to everyone.
https://github.com/WordPress/gutenberg