Умение признавать свои ошибки — современная вежливость больших корпораций. Бывают непопулярные у народа решения, которые продиктованы бизнесом (например, Фейсбук забит визуальным мусором и не собирается это менять). Бывают решения, которые изначально приняты сознательно, потому что думали, что так будет лучше, но когда стало понятно, что решение плохое, компания не захотела показаться глупой и выдала проблемы за особую идеологию (отсутствие возможности редактировать твиты в Twitter; отсутствие возможности адекватно прикреплять картинку к посту в Telegram). Бывают решения от лени, когда какой-то момент вообще не продумывали (неправильный визуальный акцент на номера телефонов вместо имён в групповых чатах WhatsApp; отсутствие возможности отправить альбом отложенным сообщением в Telegram). Бывают решения от незнания, когда люди некомпетентны или не очень понимают, что делают (бардак на вкладке «сервисы» ВКонтакте). А бывают решения, про которые стало понятно, что они плохие, и компания их откатывает. Это большая редкость. Подумать только: компания признаёт ошибку и делает обратно как удобнее.
Вы, наверное, помните ситуацию с Кинопоиском: всем включили новый интерфейс, люди стали жаловаться, и компания вернула старый интерфейс, а в новый начала перерабатывать его постепенно. Но тут глобальное изменение вызвало глобальное недовольство, был реальный риск снижения пользовательской базы. А вот вчера на WWDC показали, что Apple возвращает в iOS 15 карусель выбора времени для будильника. Изменение интерфейса этой карусели — одно из худших дизайнерских решений Apple за всё время. Выбирать время стало значительно неудобнее. В то же время это мелочь, из-за которой никто не перестал бы пользоваться айфоном. Особенно когда речь идёт об оголтелых Apple-фанатах: им можно продать даже куда более абсурдные и корявые вещи, всё стерпят. Однако же компания решила вернуть предыдущий вид карусели, очевидно более дружественный и понятный. Кажется, такие случаи в наше время — большая редкость.
#gadgets
Google Docs saytiga oid 7 mohirlik
#mohirlik / #docs
🔜 Nasib qilsa oktabr oylarida e'lon qilinishi reja qilingan "Kompyuter Savodxonligi" (KS) onlayn, pullik kursimiz uchun Word dasturini o'rgatish bilan birgalikda Google Docs dan foydalanish bo'yicha ham darslar kiritdik.
✅ Word'dan ko'ra qulayroq jihatlari bo'lgan Docs ni bir vaqtni o'zida bir qancha insonlar tomonidan ko'rish/o'zgartirish imkoniyati va undagi menyularni juda sodda tuzilgani ushbu saytdan foydalanishga undaydi. Undan tashqari Word kabi Docs da hech qanday aktivatsiyalar so'ralmaydi 😉.
📃 Sizlarga ulashmoqchi bo'lgan ushbu qo'llanma yuqorida aytib o'tilgan kursimizning bir darsi uchun tayyorlangan.
🌐Onlayn ko'rish I .PDF shaklida yuklash
❓KS kursimizni kutayotganlar bormi? (👍 = xa)
💻 Kompyuterni birga o'rganamiz ⤵️
TelegramIYouTube
Asinxron JavaScript (2-qism) || Async / await
Promiseda ketma-ket .then() methodini ko'p ishlatishdan saqlanish uchun Async/ await dan foydalanish tavsiya qilinadi.
async function fetchData(){
const response = await fetch("https://jsonplaceholder.typicode.com/todos/1")
const res = await response.json()
console.log(res);
}
Async / await da xatoliklar bilan ishlash uchun try / catch dan foydalanamiz
async function fetchData(){
try{
const response = await fetch("https://jsonplaceholder.typicode.com/todos/1")
const res = await response.json()
if(!res.ok){
throw new Error("show erorr")
}
console.log(res);
}
catch(err){
console.log(err);
}
}
Async kalit so'zi bilan boshlangan har qanday fungsiya bizga promise qaytarishini xisobga olsak xatoliklar bilan fungsiya chaqirilgan joyda ham ishlash mumkin.
async function fetchData(){
const response = await fetch("https://jsonplaceholder.typicode.com/todos/1")
const res = await response.json()
if(!res.ok){
throw new Error("show erorr")
}
return res
}
fetchData().then((data)=>{
console.log(data)
}).catch((err)=>{
console.log(err);
});
#javascript#docs
☑️@valisherbotirov
Asinxron JavaScript || Promise
JavaScriptda Promiseni new Promise() konstruktoriga argument sifatida o'zida resolve va reject argumentlarini qabul qilgan fungsiya berish bilan yaratamiz.
const myPromise = new Promise((resolve, reject) => {
let age = 21;
setTimeout(() =>{
if(age > 20)
resolve("Done processing")
else
reject("Error processing")
},2000)
})
Promisedan qaytgan malumotlarni then va catch methodlari bilan tutib olib qayta ishlaymiz
myPromise.then((res) =>{
console.log(res)
}).catch((err) =>{
console.log(err)
})
Agar promise fulfilled muvaffaqiyatli bo'lsa malumotlarni then methodi bilan, agar xatolik rejected bo'lsa unda catch methodida xatolikni tutib olishimiz mumkin!
#javascript#docs
☑️@valisherbotirov
Google Docs servisiga oid 10 mohirlik
#videodars / #docs / #word / manba
ℹ️ Microsoft Word dasturining o'rnini bosuvchi servislardan biri Google Docs hisoblanadi. Ushbu darsimizda servisga tegishli bo'lgan 10 ta mohirlik va ustuvor jihatlarini ko'rib chiqamiz.
🌐 Google Docs'ga quyidagi manzillar orqali kirishingiz mumkin:
- https://docs.google.com/
- https://docs.new/
📌Word dasturidagi "Сноска" funksiyasi haqida batafsil ma'lumot
🟢YouTube'da ko'rish (📲)
💽: 51.7 MB ⏳: 09:36
💻 Kompyuterni birga o'rganamiz ⤵️
TelegramIInstagramITikTokIYouTube
Sheets yoki Docs'da tayyorlangan hujjatni tezkor pdf qilib yuklash
#mohirlik / #docs / #sheets
⬇️ Google Sheets yoki Docs da tayyorlangan hujjatlarni onlayn ko'rish imkoniyati mavjud, lekin ba'zi telefonlarda ushbu saytlarda tayyorlangan hujjatlarni ko'rishda qiyinchilik bo'lishi mumkin. Bunday holatda hujjatga kirmasdan turib uni PDF holatida yuklashni tavsiya qilamiz.
➕ Buning uchun hujjat havolasiga /export?format=pdf qo'shib brauzerdan kirasiz, shunda hujjatning ayni vaqtdagi holati PDF shaklida yuklanib boshlaydi, masalan:
🔗 Hujjatimiz havolasi (onlayn ko'rish): https://docs.google.com/spreadsheets/d/1GzCdUFfKIgn2TJCYXEuNyBtYlg3BGoz2yS_-RnOIytI
📄 Uni .PDF holatida yuklash: https://docs.google.com/spreadsheets/d/1GzCdUFfKIgn2TJCYXEuNyBtYlg3BGoz2yS_-RnOIytI/export?format=pdf
😉 Kompyuter Savodxonligi kursimizda Sheets va Docs'ni o'rganish bo'yicha darslar yetarlicha amaliyotlar bilan berilgan: Kompyuterni professionallardan o'rganing!
💻 Kompyuterni birga o'rganamiz ⤵️
TelegramIYouTube
Welcome to Russia!
Congratulations, you became students in the Russian Federation! We are happy to welcome you and wish you success in academics, science and in your chosen speciality!
And to facilitate your adaptation in the new conditions, we have prepared for you a memo with the most up-to-date information that will be useful to you in Russia.
What can you learn from it?
❇️ Key phone numbers of government services, federal agencies and institutions;
❇️ Dates of major public holidays;
❇️ Information about the documents required to enter the country;
❇️ First 5 steps when arriving in Russia;
❇️ Information on departure;
❇️ Documents to carry out with you all the time;
❇️ Useful links and advices.
Download the attached document or follow the QR code in the comments.
Thanks to t.me/inostranets_v_RF
#global#info#docs
Bind()
Bind ni call va apply dan farqi funksiyani ishlatilgan joyida chaqirmasdan funksiyani this qiymatini biz berib yuborgan objectga o'zgartirib yangi funksiya yaratib qaytaradi. Uni biror o'zgaruvchiga tenglab olib ishlatishimiz mumkin bo'ladi.
function myFunc(){
console.log(this.age)
}
const obj = {
age:21
}
const newFunc = myFunc.bind(obj)
newFunc()
Bind da objectga qo'shib argument berib yuborish call ga o'xshash bo'ladi
bind(obj, arg1, arg2, ...)
#javascript#docs#interview_questions
☑️@valisherbotirov
Apply()
Apply methodi ham Call() bilan deyarli bir xil ishlaydi. Call() dan farqi funksiyaga argument berib yuborayotgan vaqtimiz argumentlarni array ko'rinishida beramiz.
function myFunc(args){
console.log(this.age + " " + args)
}
const obj = {
age:21
}
myFunc.apply(obj,["this is argument"])
```
call(obj, arg1, arg2, ...)
apply(obj, [arg1,arg2,...])`
#javascript#docs#interview_questions
☑️@valisherbotirov
JavaScriptda Call() , Apply() va Bind() methodlari.
Call() - JavaScriptda funksiyani chaqirish paytida this qiymatini o'zgartirish uchun ishlatiladi. Bu method orqali berib yuborgan objectimizni contextida shu funksiyani chaqirib beradi va funksiya ichida ishlatilgan this ni berib yuborilgan objectimizga tenglashtirib beradi.
Misollar orqali ko'ramiz :
function myFunc(){
console.log(this)
}
myFunc()
Bizda muFunc degan funksiyamiz bor va bu bizga xozir global Window objectini qaytaradi. Chunki fungsiya global scopeda chaqirilgan.
Endi funksiyaga call methodi orqali birorta object berib ko'ramiz.
function myFunc(){
console.log(this)
}
const obj = {
age:21
}
myFunc.call(obj)
Bu holda funksiyamiz bizga obj deb nomlangan objectimizni qaytaradi. Sababi call() methodi funksiyani obj objectini contextida chaqirib beryabdi va natijada funksiyani this qiymati bizning obj nomli objectimizga teng bo'lib qolyabdi.
Call() orqali argument berib yuborish
Call() bilan funksiyani chaqirgan vaqtimiz objectga qo'shib o'zimizda ixtiyoriy argument ham berib yuborishimiz mumkin.
function myFunc(args){
console.log(this.age + " " + args)
}
const obj = {
age:21
}
myFunc.call(obj,"this is argument")
#javascript#docs#interview_questions
☑️@valisherbotirov
JavaScript fungsiyalarda this kalit so'zidan foydalanish
Fungsiyaning ichida this kalit so'zidan foydalanganimizda this qiymati fungsiya qayerda chaqirilayotganiga bog'liq bo'ladi.
Misollar yordamida ko'rib o'tamiz!
function showThis (){
console.log(this)
}
showThis()
ushbu misolda this bizga JavaScriptdagi Window objectini qaytaradi. Sababi biz fungsiyani global scope ichida chaqiryabmiz.
const person = {
name : "Valisher",
fetchName:function(){
console.log(this.name) // Valisher
}
}
person.fetchName()
bu misolda esa this bizga person objectini qaytaradi. Sababi fetchName fungsiyasi person objectini xossasi bo'lgani uchun fungsiyani chaqirgan vaqtimiz this person objectini qaytaradi.
const person = {
name : "Valisher",
fetchName:function(){
console.log(this.name)
}
}
const getName = person.fetchName
const person2 = {
name : "John",
getName
}
person2.getName() // John
ushbu misolda esa this kalit so'zi person2 objectini qaytaradi. Sababi biz person1 objectidagi fetchName fungiyasini getName o'zgaruvchisiga tenglab olib uni esa person2 objectiga property sifatida beryabmiz. Natijada this bizga person2 objectini qaytarib beryabdi.
#javascript#docs#interview_questions
☑️@valisherbotirov