МУКАММАЛ ДАСТУРЛАШ
МУКАММАЛ ДАСТУРЛАШ. 1-китоб: HTML ва CSS

HTML даставвал рaсм ва матнларни ўқувчига жозибадор қилиб намойиш этиш учун яратилган. Кейинчалик унга ёндашиш анчагина ўзгариб CSS ҳам жорий этилди. Ҳозирги кунда HTML ва CSS қай даражда ривожланиб, такомиллашиб, оммалашиб кетганини ҳар биримиз кундалик ҳаётимизда ҳис этамиз.

Жавлон АБДУЛЛО қаламига мансуб «Мукаммал дастурлаш» китоблар мажмуасининг илк қисми ҳам айнан HTML ва CSSга бағишланган. Бу мавзуда интернет орқали маълумот топиш жуда осон, лавҳали дарсликлар ва излаш тизимига эга маълумотномалар кўплаб топиш мумкин. Нега энди айнан шу соҳада китоб ёзишга жазм эттингиз, бунга эҳтиёж борми, дея муаллифга юзланганимизда қуйидаги мазмунда жавоб олдик:

 

Биринчидан, илм толиблари жуда яхши билишадики, билим олишда китобнинг ўрни бўлак. Китоб ёзишнинг ўз қонун қоидалари мавжуд бўлиб, соҳани юз фоиз билишнинг ўзи ҳам кифоя қилмайди. Ёритилаётган маълумотлар кетма-кетлиги, ўқувчининг қабул қилиш қобилятини ҳисобга олган ҳолда психологик ёндашувни талаб этади. Устоздан таълим олинаётганда ҳам, у тавсия этган китобларни ўқиш лозим. Акс ҳолда мукаммал эгалланмаган билим, ҳаётда жуда кўп қоқилишларга сабаб бўлади. Назарияни яхши билмасдан, амаллиётда нимагадир эришиш ўта мушкул. Деярли йигирма йиллик фаолятим давомида жуда кўп учратган ҳодисам шу бўлди-ки, бир нарсани биламан, қолганини зарур бўлганда, тақозо қилса ўрнида ўрганиб қўллаб кетавераман деб аксарият дастурчилар хатога йўл қўйишади. Мавжуд имкониятдан фойдаланиш ўрнига истеъмолчини кўзига «алдовчи», «айланма йўллар»ни қўллашга мажбур бўлишади.

Иккинчидан, ушбу китоб мукаммал қўлланма сифатида тақдим этилмоқда. Унда HTML ва CSS имкониятларини юз фоиз ёритишга интинилган. Тўғрисини айтиш жоизки, ҳали кўпгина браузерлар ҳам талаб бўйича юз фоиз имкониятларни қўлламайди. Айнан шундай ҳолларда қайси браузернинг нуқсони бўлса, батафсил ёритилган. Мавжуд рус ва инглиз тиллардаги китобларда ҳам HTML ва CSSга жиддий ёндашиб баён этилмаган. Тег ва ҳусусиятлар нима мақсадларда киритилган, бир-биридан фарқи ва мутаносиблиги, қайсилари қандай ҳолларда ишлатилиши керак, қандай вазиятларда улар бир-бирларига конфликт беради. Мураккаб комбинацияли объектлар яратишда нималарни ҳисобга олиш лозим. (Масалан битта объектни ўртасига бошқасини жойлаштириш учун «margin: auto;» хусусиятини ёзиш етарли эмас, «display: block;» ҳам ёзилиши шарт!) Булар ҳақда тўлиқ маълумот топиш деярли имконсиз. Сабаби, китобни одатда дастурловчилар ёзишмайди. Ушбу китобни ёзишда «Mozilla Firefox» яратувчиларидан ҳар бир тег ва ҳусусиятларни асл мақсад ва вазифаларини ўрганишга тўғри келди. Бу жараёнда «Firefox»ни «Сhrome»дан ҳам устун жиҳатлари мавжудлигига амин бўлдик. Албатта, ўз навбатида камчиликлари ҳам етарлича.

Учинчидан, ҳар бир таърифланаётган маълумотни барча оммабоп браузерлар, шу жумладан мобил қурилмалар учун ҳам, бир хилда намоён этилиши текширилган. Қандайдир фарқлар бўлса, баён этилган. Имкон борича универсал код ёзишга аҳамият қаратилган. Эскирган тег ва аломатлар ўрнига нималарни қандай қўллаш борасида тавсиялар келтирилган.

Тўртинчидан, энг муҳими шуки, HTML ва CSS дастурлаш тили ҳисобланмаса ҳам, мукаммал дастурлаш учун (веб соҳасида) асосий илк қадам бўлганлиги боис, замонавий профессионал ёндашув бўйича ёритилган. Турлар алоҳида баён этилган. Керак жойларда ҳисоб-китоблар қандай амалга оширилиши мисоллар билан келтирилган.

Бешинчидан, замонавий технология ва интернет сайтларига қўйиладиган талаблар асосида, саҳифалар қандай яратилиши лозимлиги кенг тушунтирилган. Китобнинг биринчи бўлимида батафсил танишиш мумкинки, HTMLнинг 5-талқини тўртинчисидан деярли ўн йил ўтиб жорий этилган. Унинг талаблари асосан код ёзувчи дастурловчилар учун эмас, браузер яратувчиларга қаратилган. Ҳозирги кунда аксарият оммавий браузерлар, ўша талабларнинг тўқсон фоиздан зиёдини қўллайди. Ҳозирча қайсидир браузерда HTML5нинг қайсидир талаби бажарилмаган бўлса, у ҳам кенг ёритилиб, бу ҳақида изоҳ бериб ўтилган. Авваллари биргина div теги билан кўпгина жойлаштирувлар бажарилган бўлса, ҳозирда header, aside, main, article, footer, nav каби ўз талабига эга янги теглар киритилган. Глобал излаш тизимлари (Google, Yandex, MSN ва бошқалар) ўзига индексация қилишда айнан ушбу тегларни қандай таҳлил қилиши тушунтириб ўтилган.

Олтинчидан, ушбу китобда нафақат жило ва жойлаштирув (дизайн, верстка) баён этилган. Балки замон талаби ҳамда SVG ва CSS имкониятларидан келиб чиққан ҳолда тасвир чизиш билан бирга ҳаракатлантириш ҳам кенг ёритилган. JavaScriptни қўлламасдан ҳам, бир қанча мураккаб анимацияларни бажариш мумкинлиги кўрсатилган. Дастурларнинг асосий талабларидан бири, ҳисобот тайёрлаб беришдир. Ушбу китобдаги билимларни ўзлаштирган одамга нафақат статик, балки динамик ўзгарувчан ҳисоботларни ҳам хоҳ жадвал тарзда, хоҳ график кўринишда тасвирлаш муаммо туғдирмайди. Айниқса, сайтларга қўйиладиган рекламаларни бежирим ҳаракатлар асносида намоён этиш замон талаби, бунинг учун мураккаб дастурлаш тилларига мурожаат қилишга ҳеч ҳам ҳожат қолмаган.

Еттинчидан, ушбу китоб она ўзбек тилимизда, содда тушунарли тарзда, ортиқча-ўринсиз маълумотлардан ҳоли тарзда ёзилган. Баъзи китоблардан бир неча саҳифа мутола қилиб, ягона нарса ўрганилса, бунда битта бетдан бир қанча билим олиш имконияти мавжуд.

 

Ушбу китоб замонавий дастурлашни ўрганмоқчи бўлганлар, дастурлаш билан шуғуланадиганлар ва ҳатто дастурий таъминот яратиш бўйича етук мутахассислар учун ҳам мўлжалланган бўлиб, илм олиш ва мустахкамлаш учун энг керакли бўладиган зарурий билимларни ўзида жамлаган мукаммал қўлланмадир. Юқори синф ўқувчилари, колледж-лицей ва Олий ўқув юрти талабалари ҳамда устозлари учун тавсия этилади. Бундан ташқари мустақил ўрганишни истовчилар учун энг фойдали манба сифатида хизмат қилади. Дастурлашни билмасдан, ўрганмасдан ҳам китобдаги билимларнинг ярмини ўзлаштирган инсон бемалол профессионал даражада веб-дизайнерлик қилиши мумкин.

Муаллиф фикрларига қўшимча тарзда айтишимиз мумкинки, ушбу китоб айнан ўзбек дастурчиларини қўллаб-қувватлаш йўлида олиб борилаётган сайи ҳаракатларнинг яна бир қадами ҳолос. Китобдаги билимлар бўйича савол ва таклифларни «ilm.yurt.uz» сайтида ёки махсус «telegram» гуруҳида йўллаб тезкор жавоб олишингиз мумкин. Китоб қаттиқ муқовада, сифатли қоғозда чидамли ва мустахкам, муҳими, ўқиш учун жуда қулай кўринишда нашр этилган.

Фақат TABLE объекти ва CSS ҳусусиятлари ёрдамида ясалган мобил ҳисобот.

Китоб муқоваси ортида оммабоп ранглар номлари ва кодлари келтирилган.

Китобда кодлар яққол ажратилиб, ҳосил бўладиган шакллар ҳам тасвирланган.

138-бетдаги мисол. Сичқонча кўрсатгичи олма устига борса, бир юмалаб бўёғини ўзгартиради.

Фақат DETAILS объекти ва CSS ҳусусиятлари билан яратилган ҳаракатланувчи меню. (193-бет.)