<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های علی اکبر ظهور</title><link>https://virgool.ir/feed/@aliakbar.zohour</link><description>محتوای کاربردی در زمینه برنامه نویسی و مهندسی نرم افزار تولید میکنم و سعی میکنم تا تجربیات خودم رو مطرح کنم . صفحه لینکدین من : https://www.linkedin.com/in/aliakbarzohour/</description><language>fa</language><pubDate>2026-11-11 09:56:22</pubDate><image><url>https://files.virgool.ir/upload/users/1260262/avatar/3neJzB.jpg</url><title>علی اکبر ظهور</title><link>https://virgool.ir/@aliakbar.zohour</link></image><item><title>اگر برنامه نویس تازه کار هستیداین اشتباهات رو انجام ندید !!</title><link>https://virgool.ir/@aliakbar.zohour/اگر-برنامه-نویس-تازه-کار-هستیداین-اشتباهات-رو-انجام-ندید-eofmsbk2ipkm</link><description>تایم زیادی از آخرین مطلبی که نوشتم میگذره و توی این تایم طولانی من واقعا یک زندگی سخت ولی جذاب داشتم . دوسش دارم . زندگیه جالب و قابل بحثیه ولی امروز میخوام چند تا از اشتباهایی که کردم رو با شما به اشتراک بزارم تا شما حد اقل سه سال توی زندگیتون از بقیه بیوفتید جلو . خوشحال میشم پیشرفت بقیه رو ببینم پس برای اینکه دل من رو شاد کنید و زندگی خودتون رو به عنوان برنامه نویس بهتر کنید این مطلب رو تا آخر بخونید و بهش عمل کنید .موضوع کلیاین قراره یه مطلب کاملا دلی باشه پس من رو بخاطر متن خیلی خودمونی که قراره بخونید ببخشید . آدمایی رو دیدم که به خودم گفتم بابا دمت گرم خیلی خوب اومدی جلو و بعضی ها رو هم دیدم که به خودم گفتم اوه اوه خیلی من از اینا عقب ترم و اوه اوه اینا چقدر با سوادن و سعی کردم که خودمو بهشون برسونم و در همین مسیر اشتباهات زیادی کردم و درس های خیلی زیادی گرفتم که دوست دارم با شما به اشتراک بزارم . تجربه هایی که کردم معمولا چیز هایی بودن که اگر زودتر متوجه اونا میشدم و بهشون عمل میکردم خیلی حرفه ای تر خیلی خوش برخورد تر و خیلی با سواد تر بودم . . .از کجا آموزش ببینیم ؟خیلی صادقانه بخوام بگم من خودم اولین آموزشی که دیدم توی مجتمع فنی تهران بود که دوره وب دیزاین آموزش میدادن و دوره ای بود که توش پایه های برنامه نویسی فرانت رو آموزش میدادن که همون موقع نزدیک به ۵ سال از زمانش عقب تر بود و با چیز هایی که دیگه هیچ کس باهاشون کار نمیکرد آموزش میدادن . سینتکس های قدیمی و نوع تفکر های قدیمی توی برنامه نویسی و اینجور چیز ها که من به لطف استاد خیلی خیلی عزیزم متوجه اونا شدم . استادم به قول خودش برنامه نویس خودساخته بود و واقعا هم بود ….سر همین موضوع خیلی تفکر بروز تری داشت و فوق العاده هم باسواد بود نسبت به سنی که داشت و تجربه ای که کسب کرده بود توی دنیای برنامه نویسی . خیلی بهم کمک کرد که از همون اول دیدگاه درستی داشته باشم و بدونم که مسیر درست چیه . متاسفانه استاد من دقیقا یک ماه بعد از اینکه دوره ما باهاش تموم شد برای همیشه به روسیه مهاجرت کرد و دیگه ندیدیمش و فقط ازش برای من یک سری خاطره خوب به جا موند و دیدگاه جذابش .به نظر من هر مدل هزینه ای برای یادگیری برنامه نویسی به سبک اکادمیک اشتباه کامله . مگر اینکه واقعا بخواید از پایه شروع کنید .آموزش آکادمیک ذهن شما رو محدود میکنه و همین هم در مورد دوره فروش های اینترنتی صدق میکنه . دوره هایی که یک شخص با سواد و مطرح ضبط میکنه رو شخصا قبول دارم ولی هیچ وقت نتونستم خودمو قانع کنم که ازشون دوره بخرم چون سرفصل هاشون رو دیده بدم و از نظرم بدترین حالت های ممکن رو داشتن و صد البته که یک سری ها هم سو استفاده میکنن مثل یه سری سایت هایی که هم رزومه براتون میسازن و هم مسابقه برگزار میکنن و هم دوره میفروشن ( دیگه نخواستم اشاره مستقیم کنم )بهترین مدل یادگیری اون مدلی هست که شما یک مشکل برای خودتون بسازید و با سرچ کردن سعی کنید که اون رو حل کنید . مثلا سعی کنید کدی بنویسید که با استفاده از جاوااسکریپت به دوربین کاربر دسترسی پیدا کنه و یک عکس قابل دانلود رو بگیره و ذخیره کنه که بعد از رفرش از بین نره . یا مثلا اگر میخواید لینوکس یاد بگیرید فقط نصبش کنید و سعی کنید داخلش دووم بیارید ! همین .این مدل یادگیری یه ذره سخت و چالش بر انگیره ولی مطمئن میشید که همیشه سوادتون رو با خودتون حمل میکنید و جدا از اون به یه اعتماد به نفس جالب درباره خودتون میرسید .مذاکره یاد بگیریدهنر مذاکره کردن همیشه بهتون کمک میکنه . همیــــــــــــــشه !!اگر بتونید با این اوضاع نابود توی ایران و توی شهرتون کار پیدا کنید به احتمال ۱۰۰ درصد باید برای حقوقتون چونه های سنگین بزنید و باید بهشون ثابت کنید که ارزش اون مبلغ و تایمی که میزارید رو دارید . صد البته که حرف های شما برای اون بیزینس ارزشی نخواهد داشت ولی شما باید تلاش خودتون رو بکنید چون شما به کار نیاز دارید .اگر هم که بخواید فریلنس کار کنید که دیگه ثانیه به ثانیه زندگی شما بر پایه مذاکراتی که انجام دادید میگذره . اون بیرون آدم هایی هستن که حتی خودشون هم نمیدونن چی میخوان و بابت چیزی که حتی خودشون هم نمیدونن چیه ولی بهش نیاز دارن پول پرداخت نمیکنن و باید قانع بشن .خودتون رو بروز نگه داریدشما به عنوان برنامه نویس باید باید همیشه خدا توی آپدیت ترین حالت خودتون باشید . چون میتونید حداقل چند ماه زودتر از این دوره فروش های پولکی یا این استادایی که توی اینستاگرام همه چیو خیلی خفن جلوه میدن همه چیو یاد بگیرید و توی کار هاتون ازشون استفاده کنید .یادمه ۴ ماه بعد از اینکه من از tailwind css استفاده کردم تازه توی اینستاگرام پر شد که واااای بوتسترپ مرد واااای همه مردم بیاد از tailwind استفاده کنید که بعد الان به جایی رسیدیم که فقط ایران خودرو ازش استفاده نمیکنه ……..تنبلی رو کنار بزاریدبدترین دشمن زندگی هر کس تنبلیه خودشه . من واقعا شخص تنبلی هستم ولی توی کار هیچ وقت نمیزارم که تنبلی مانع من بشه . حال ندارم و حوصله ندارم و باشه بعدا و حال اانجامش میدم نداریم . مگر اینکه خیلی براش تلاش کرده باشید و به نتیجه نرسیده باشید . خودتونو جمع و جور کنید . عمر کاریتون از چیزی که فکر میکنید کوتاه ترهنشد نداریم !!!تقریبا هیچ کاری نشد نداره حتی اگر برنامه نویس نیستید و با وردپرس کار میکنید . تقریبا هیچ وقت نمیتونم از هیچ کس قبول کنم که این کار نمیشه یا نشدنیه یا خیلی سخته . سخت بودن یه کاری جذابش میکنه ولی اینکه نشه نداریم . توی این دنیا افرادی هستن که کارایی میکنن از سطح انسانیت بالاتره و وقتی که با کارایی که اونا انجام دادن رو به رو میشید میگید که ععععع منم میتونستم انجامش بدم . ولی شما نخواستید باور کنید که میتونید یه کاریو انجام بدید .سوال کنید . سرچ کنید . با مشکلتون سر و کله بزنید . بالاخره میتونید اون کار رو انجام بدید .همه چیز شدنیه فقط کافیه این رو به خودتون تلقین کنید .یه موس و کیبورد خفن برای خودتون بگیریدبهتون قول میدم اگر از صدا و نرمی موس و کیبوردتون لذت ببرید تقریبا میتونید دنیا رو باهاشون فتح کنید . من با اولین پولی که از برنامه نویسی در آوردم یه کیبورد مکانیکال گرفتم که هنوزم از کار کردن باهاش و گوش کردن به صداش موقع تایپ لذت میبرم . باعث میشه خستگیتون کمتر و لذتتون بیشتر بشههمیشه نمونه کار داشته باشیدحتی اگر یک وبسایت شخصی خیلی ساده میخواد طراحی کنید به غیر معمولی ترین روش ممکن عملیش کنید . جوری یه وبسایت شخصی بسازید که هر کسی تاکید میکنم هر کسی اون رو دید بگه که من اینو میخواااام .به تیکه کد ها و تمرین هایی که میکنید راضی نباشید و سعی کنید تا میتونید نمونه کار داشته باشید و نکته مهمی که وجود داره اینه که نمونه کار های بقیه آدما رو باید نگاه کنید . چون همیشه یه نفر پیدا میشه که از شما یه کاری رو بهتر - تمیز تر و بهینه تر انجام داده باشهسعی کنید هیچ وقت بخاطر پول کاری رو انجام ندیدهر وقت برای پول یه کاریو انجام میدید , پول ازتون فرار میکنه این یه قانون نانوشتست ولی تقریبا هر آدمی میتونه این رو تایید کنه و تو کار ما باید یکم لذت قاطی کارتون بکینید نه انگیره مالی …وقتی برای پول یه پروژه رو میگیرید فقط میخواید که تمومش کنید و در انتهای پروژه شما یه بمب ساعتی تحویل مشتری دادید که دقیقا از لحظه تحویل هر لحظه ممکنه منفجر بشه . میتونه هک بشه و میتونه باگ های کاراتون همه با هم بیرون بزنن روی محیط پروداکشن و هزااااار تا مشکل مختلفمن یه تایم زیادی از این سه سالی که گذشت رو برای پول کار کردم و به چشم دیدم که کارای من تو مزخرف ترین حالت خودشون بودن و از وقتی بخاطر پول یه کاریو انجام ندادم کار هام هر روز بهتر از دیروزشون شدن .برای بهتر کردن خودتون کد بنویسید و کار کنید . بخاطر نمایش توانایی هاتون کد بزنید . بخاطر ارتباط گرفتن و شبکه سازی یه کاریو انجام بدید .کتاب بخونید آره کتاب بخونید . جدا از اینکه خیلی بهتر میتونید یه موضوعی رو یاد بگیرید بهتون کمک میکنه که متوجه بشید دقیقا چند دقیقه میتونید تمرکز کنید . تایم بگیرید . از موقعی که یه کتاب رو شروع میکنید به خوندن چند دقیقه طول میکشه تا خوابتون ببره ….به خودشناسیتون کمک میکنهچیزی که بلدید رو به بقیه یاد بدیداین کلید چیزیه که هم به شما کمک میکنه و هم کمک میکنه این جامعه ضعیف برنامه نویس ها قوی تر بشه . مشکل ما اینه که آدمایی که سواد و تجربه خیلی خوبی دارن اون رو با کسی به اشتراک نمیزارن و تایم پیشرفت بقیه رو هم بیشتر میکنن و باعث این میشه که من بعد از چند سال کار حرفه ای تازه متوجه اشتباهاتم بشم و اصلاحشون کنم . میتونست ۱ ماه یا ۱ هفته یا حتی ۱۰ دقیقه باشه !خاطره در این مورد خیلی زیاد دارم ولی ترجیح میدم اینجا راجبش صحبت نکنم و بحث رو به حاشیه نبرم .اگر دقت کنید دیزاینر ها جامعه بهتری نسبت به برنامه نویس ها دارن . بخاطر اینه که همه طراح های همیدگه رو هر روز نگاه میکنن و سعی میکنن بهتر و خوشگل ترش کنن و یا مدرن ترش کنن . مشکلات خودشون رو متوجه میشن و این سوال برای همشون پیش میاد که پس چرا کارای من اینقدر قشنگ و دلنشین نیست ؟؟؟؟در کل سعی کنید چیزی رو که بلدید به بقیه هم یاد بدید . هم خودتون پیشرفت میکنید و هم بقیه و باعث میشه که به حد جالبی از محبوبیت برسیدو برای آخرین موضوع این مطلب ….یه مشکلی رو پیدا کنید و حلش کنیدهمیشه یه مشکلی برای هر شخص و یا شرکتی وجود داره که شما میتونید حلش کنید . شاید اونا نخوانش ولی شما میتونید اون رو برای خودتون حل کنید . مثلا اسنپ چجوری یه صفحه داره که موقع ریلیز نسخه جدید ظاهر میشه و کاربر میتونه از اونجا بروزرسانی کنه ؟ مگه توی فرانت هم میشه بروزرسانی داد ؟ مگه اپ اندرویده ؟؟سوال خوبیه برای اینکه شروع کنید به سرچ کردن و پرس و جو کردن برای ساختن یه همچین چیزیاین یه مورد کوچیک بود ولی میتونید همیشه سوال های بهتری از خودتون بپرسید و حلش کنید مثلا اینکه اگر دیجیکالا ۲۰ برابر الانش کاربر داشت چجوری میتونست اونا رو به بهترین روش هندل کنه ؟ محصولاتش رو چجوری آپدیت میکرد و از این مدل سوالاتهرچی بروز تر باشید بهتر متوجه میشید که چه مشکلی رو باید برطرف کنیداین ها چیزایی بود که از ته دلم دوست داشتم با شمایی که زحمت کشیدی و این مطلب رو خوندی به اشتراک بزارم تا شاید شما از بقیه بهتر توی زندگی و کارتون عمل کنید . امیدوارم که از این تجربه ها استفاده کنید و بعد ها هم شما مشکلی از چند نفر دیگه حل کنید . موضوع هایی که الان میخواستم راجبشون بنویسم این ها بودن و اگر خوشتون بیاد احتمال صد درصد یه یه نسخه دوم هم خواهم نوشتشاد باشید</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Fri, 11 Oct 2024 20:34:34 +0330</pubDate></item><item><title>کار کردن با مدیر بسته eopkg</title><link>https://virgool.ir/@aliakbar.zohour/کار-کردن-با-مدیر-بسته-eopkg-olch735gpqby</link><description>برای لینوکسی که از صفر و بدون پشتوانه ساخته شده مثل سالاس, باید یک پکیج منیجر مستقل هم ساخته میشد . دقیقا یکی از فرق های لینوکس سالاس همینه که برخلاف توزیع هایی مثل Arch یا Debian , مستقل هستش و مدیر بسته یا Package Manager خودش رو داره .  بریم که خیلی سریع کار کردن با این مدیر بسته رو یاد بگیریم ...اگر درباره لینوکس سالاس ( Solus ) چیزی نمیدونید , این مطلب رو بخونید . تمام چیز هایی که لازمه درباره این لینوکس و مدیر بسته اون بدونید , توی این مطلب هست . توضیح کلی همه لینوکس ها و مدیر بسته هاشون دارن یک کار رو انجام میدن و تقریبا فرقی با همدیگه ندارن . پس ترس خاصی نداره و فقط نوع نوشتن اونها عوض میشه .نصب برنامه هابرای نصب کردن برنامه های مختلف دستور زیر رو دنبال کنید .برای مثال ما tmux رو نصب میکنیم :sudo  eopkg  install  tmuxمثال تصویری برای نصب برنامه هاحدف برنامه هابرای حذف کردن برنامه ها دستور زیر رو دنبال کنید :sudo  eopkg  remove  tmuxمثال تصویری برای حذف برنامه هاآپدیت کردن برنامه ها برای آپدیت کردن کل سیستم و نرم افزار ها دستور زیر را دنبال کنید :sudo eopkg upgradeو برای آپدیت کردن یک برنامه یا اسکریپت خاص دستور زیر را دنبال کنید :sudo eopkg upgrade &#39; YOUR_PACKAGE_NAME &#39;سرچ کردن در ریپازیتوری هاگاهی وقت ها شاید بخواید دنبال یه برنامه خاص توی مخازن بگردید تا ببینید میتونید اون رو نصب کنید یا باید از یه منبع خارجی اون رو نصب کنید . دستور زیر را دنبال کنید :sudo eopkg search &#39; YOUR_PACKAGE_NAME &#39;درباره برنامه هاشاید براتون جالب باشه که درباره برنامه یا اسکریپتی که دارید ازش استفاده میکنید بیشتر بدونید . دستور زیر را دنبال کنید :sudo eopkg info &#39; YOUR_PACKAGE_NAME &#39;نتیجه گیری این یه معرفی و نحوه کار سریع با این پکیج منیجر بود که اگر با لینوکس سالاس دارید کار میکنید و یا میخواید کار کنید, بهش احتیاج پیدا خواهید کرد . سعی کردم که خیلی سریع و خودمونی توضیح بدم . لذت ببرید .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Fri, 10 Nov 2023 03:54:40 +0330</pubDate></item><item><title>معرفی لینوکس سالاس ( Solus )</title><link>https://virgool.ir/@aliakbar.zohour/معرفی-لینوکس-سالاس-solus-hsdk9i4rdhip</link><description>به توزیع از مرگ برگشته سالاس ( Solus ) سلام کنید ! احتمالا جزو بهترین توزیع های لینوکس خواهد بود که باهاش کار میکنید . یک توزیع مستقل که به طور عجیبی استیبل و خوب به کاربر هاش سرویس داده و دقیقا مثل بقیه توزیع های گنو لینوکس , قدرتمند و خاص عمل کرده . توی این توزیع, خاص تر .درباره سالاس ( Solus )سالاس یک توزیع مستقل از لینوکس هستش . به این خاطر بهش میگیم مستقل که از روی لینوکس دیگه ای ساخته نشده ! مثل Ubuntu که از روی Debian و شاخه Debian اومده . برای سیستم های x86-64 architecture ساخته شده و  پکیج منیجر مخصوص خودش رو داره . سالاس لینوکسی هست که برای استفاده روزانه کاربران ساخته شده . طبق گفته توسعه دهندگان سالاس :A modern operating system to power your daily needs. Install today, update forever.این توزیع به صورت rolling release عرضه شده . به همین خاطر شعار این رو میدن که امروز نصب کن و تا ابد آپدیت کن . این توزیع دقیقا برای تمام افراد و همه نوع استفاده مناسبه ! چون ابزار های برنامه نویسی - تولید محتوا - کار های روزمره مثل آفیس و حتی بازی رو فراهم کرده !!! ( کی فکرشو میکرد یه روزی بشه توی لینوکس بازی کرد?)شاید این, بهترین تعریف از سالاس لینوکس بود که میتونید بخونید .مدیر بسته ( Package Manager )توی سالاس برای نصب - حذف - آپدیت و در کل مدیریت کردن بسته ها و برنامه های سیستم عامل از مدیر بسته &#34; eopkg &#34; استفاده میکنیم . نمونه دستور نصب برنامه tmux :sudo  eopkg  install  tmuxاگر میخواید کامل کار کردن با این مدیر بسته رو یاد بگیرید . به این لینک برید . پوسته ها ( Theme&#39;s )مثل بقیه لینوکس ها , توی این لینوکس هم میتونید از همه محیط ها استفاده کنید . ولی سالاس در حالت دیفالت با محیط های Gnome - Lxde - Budgie - Mate و Plasma رو به شما میده و شما میتونید iso مربوط به محیط دلخواه خودتون رو دانلود کنید و لذت ببرید سیستم مورد نیاز به طور میانگین برای ISO های مختلف این توزیع , شما قراره که یک فایل ۴ گیگی رو دانلود کنید در کمترین حالت برای نصب این توزیع به ۱۰ گیگ فضای خالی احتیاج دارید به طور میانگین به ۴ گیگ رم نیاز دارید و سیستم های ۶۴ بیت (x86_64)دیگه برای اینکه یک نرم افزار بخصوص سیستم عامل رو بخواید نصب کنید چه چیزایی لازمه بدونید ؟!؟ نتیجه گیریدیگه وقتش بود که یک نفر خیلی ساده و خوب این توزیع رو معرفی کنه . در کل به عنوان یک شخص کامپیوتری, اگر یک لپ تاپ داشته باشم که برای کارای روزانم باشه و هم بدونم شاید بخوام باهاش برنامه نویسی کنم , حتما سالاس رو نصب میکنم . توزیع نسبتا جدیده و داره توی رنکینگ میاد بالا , میتونید جزو کسانی باشید که بعد از سالها به بقیه میگید یادش بخیر اون موقع سالاس ... سعی کردم خیلی مختصر و مفید و کوتاه و البته خودمونی این توزیع رو معرفی کنم . لذت ببرید .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Fri, 10 Nov 2023 03:21:09 +0330</pubDate></item><item><title>آموزش نصب Tailwind css در Django</title><link>https://virgool.ir/@aliakbar.zohour/آموزش-نصب-tailwind-css-در-django-kbp7dbtknve7</link><description>اگر از فرانت اند به سمت بک اند برید , احتمالا نمیتونید عادت های فرانت رو کنار بزارید و احتمالا چند وقت بعد از شروع بک اند , دنبال این میگردید که چطور فریم ورک های Css رو روی فریم ورک هایی مثل جنگو نصب کنید .فریم ورک Tailwind ، فریم ورکی هست که در حال حاضر محبوب ترین فریم ورک Css به حساب میاد و تقریبا روی تمام بخش ها میتونید ازش استفاده کنید و این عالیه که شما یک ابزار قدرتمند رو روی هر برنامه ای بتونید نصب کنید .داستان منمن یک هفته بعد از شروع جنگو به مشکل استایل دادن به template ها بر خوردم که اذیتم کرد و اصلا دلم نمیخواست که چیزی مثل بوتسترپ رو داشته باشم تا یک استایل خشک بسازم ، دوست داشتم که استایل پروژه آزاد باشه و بتونم اون رو هر جوری که خواستم تغییر بدم و Tailwind بهترین گزینه بود و این سوال برام پیش اومد که چطوری tailwind رو داخل django نصب کنم ؟ نصب کردم چطوری ران کنم ؟ و از اینجور چیز ها ...مطلب فارسی در این باره وجود نداشت ، پس من اولین مطلب رو مینویسم تا برنامه نویس های تازه کار ایرانی راحت تر پیشرفت کنن . نصب Tailwind Css 1 - در مرحله اول ، django-tailwind رو با استفاده از pip نصب کنید :python -m pip install django-tailwindیا میتونید با استفاده از این دستور ، آخرین نسخه رو دانلود و نصب کنید :python -m pip install git+https://github.com/timonweb/django-tailwind.git2 - برنامه نصب شده رو توی INSTALLED_APP در بخش settings.py وارد کنید تا جنگو اون رو شناسایی کنه :INSTALLED_APPS = [&#xA;  # other Django apps&#xA;  &#39;tailwind&#39;,&#xA;]3 - بعد از نصب برنامه ، باید tailwind رو با برنامه سازگار یا اینیشیال کنیم ، دستور زیر رو دنبال کنید :python manage.py tailwind initاین دستور , app جدیدی توی پروژه ایجاد میکنه که تمام دستورات و بخش های tailwind داخل اون هست و از اون خونده میشه . اسم این بخش رو به صورت پیشفرض  theme بزارید تا خوانا تر بشه .4 - و بعد دوباره اون برنامه theme رو توی تنظیمات جنگو وارد کنید تا اون رو بشناسه :INSTALLED_APPS = [&#xA;  # other Django apps&#xA;  &#39;tailwind&#39;,&#xA;  &#39;theme&#39;&#xA;]5 - بخش theme رو در بخش settings.py رجیستر و فعال کنید ، دستور زیر رو دنبال کنید :TAILWIND_APP_NAME = &#39;theme&#39;6 - در حرکت بعدی باید Ip داخلی برنامه رو با Tailwind یکی کنید تا دریافتی ها درست باشه ، این بخش رو به بخش تنظیمات اضافه کنید :INTERNAL_IPS = [&#xA;    &#34;127.0.0.1&#34;,&#xA;] 7 - وابستگی ها یا dependencies های tailwind رو با کد زیر نصب کنید :python manage.py tailwind install8 - حالا میتونید از بخش های مختلف tailwind استفاده کنید . تگ های زیر رو به تمپلیت اصلی پروژتون اضافه کنید :{% load static tailwind_tags %}&#xA;...&#xA;&lt;head&gt;&#xA;   ...&#xA;   {% tailwind_css %}&#xA;   ...&#xA;&lt;/head&gt;9 - این بخش دلخواه هست ولی خوبه که این بخش رو داشته باشید . جنگو بخشی رو به صورت پیشفرض در اختیار شما قرار میده که به شما این اجازه رو میده بعد از هر دخیره کردن کد ، صفحه رو رفرش کنه ، دقیقا مثل وب اپلیکیشن های ری اکت یا ویو یا انگولار . برای فعال کردن این بخش فقط  django_browser_reload رو به تنظیماتی که انجام دادیم اضافه کنید :INSTALLED_APPS = [&#xA;  # other Django apps&#xA;  &#39;tailwind&#39;,&#xA;  &#39;theme&#39;,&#xA;  &#39;django_browser_reload&#39;&#xA;]10 -  برای تکمیل کردن مرحله قبلی باید یک میدل ویر در بخش settings.py اضافه کنیم . کد زیر رو دنبال کنید:MIDDLEWARE = [&#xA;  # ...&#xA;  &#34;django_browser_reload.middleware.BrowserReloadMiddleware&#34;,&#xA;  # ...&#xA;]11 - و در نهایت در بخش urls.py باید این بخش ریلود رو اضافه کنیم تا کار تکمیل بشه :from django.urls import include, path&#xA;urlpatterns = [&#xA;    ...,&#xA;    path(&#34;__reload__/&#34;, include(&#34;django_browser_reload.urls&#34;)),&#xA;]12 - و در نهایت ما tailwind css رو نصب کردیم و تنظیمات جنگو رو هم تماما انجام دادیم و پروژه آماده اجرا شدنه . دستور زیر رو دنبال کنید و تمام :python manage.py tailwind startدر نهایت این تمام کاری بود که شما باید دنبال میکردید تا tailwind رو روی جنگو نصب و استفاده کنید . خوشحالم که محتوای مفید و فارسی در اختیار برنامه نویس های فارسی زبان قرار گرفت . </description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Tue, 14 Mar 2023 02:45:31 +0330</pubDate></item><item><title>قفل کردن فایل ها و فولدر ها در تمامی نسخه های ویندوز !</title><link>https://virgool.ir/Rocket/قفل-کردن-فایل-ها-و-فولدر-ها-در-تمامی-نسخه-های-ویندوز-azyu7vm7ovjx</link><description>دوستان سلام . امیدوارم سالم و سلامت باشید . امروز اومدم با یه مطلب درباره ویندوز . . . من خیلی ویندوزی نیستم , ولی چند روزه که به اجبار با ویندوز کار میکنم و یکسری امکاناتش توی کامند لاین هست که خیلی خیلی برام جالب اومد و تقریبا میشه گفت که تعجب و علاقه من رو برانگیخت ( بابت ترکیب کلمات رسمی و خودمونی که به هم نمیخونه معذرت میخوام ) .مقدمه گاهی وقت ها شما نیاز پیدا میکنید که یه فایل یا فولدری رو قفل کنید . حالا یا با استفاده از برنامه های مختلف که من اصلا پیشنهاد نمیکنم و یا خیلی سفت تر بیاید و با خود سیستم عامل اینکار رو بکنید . خوب ظاهرا ویندوز خیلی وقته که یه همچین امکانی رو داره و خیلی خیلی هم محکم و امنه .حالا در ادامه روش های کار رو معرفی میکنم ولی برای تشریح دقیق تر من توی کانال یوتیوب فیلمی میسازم و اون رو میزارم تا بهتر اون رو یاد بگیرید ولی این مطلب کار شما رو راه میندازه و این مهمه .  بریم که کار رو داشته باشیم . . .مراحل کارمراحل کار خیلی سادست و فقط نیازه که شما یه تجربه ریز از کار کردن با cmd ویندوز داشته باشید و بدونید که چطور کار میکنه و اگر هم نمیدونید مشکلی نیست و فقط مراحل زیر رو دنبال کنید :کلید های Win + R رو در ویندوز بزنید عبارت cmd رو تایپ کنید و اینتر کنید توی کامند پرامت ( ترمینال ) این دستور رو وارد کنید :cacls &lt;Folder or File Path&gt; /p everyone:nبعد از اجرا کردن این دستور اون فایل یا فولدر تحت هیچ شرایطی به کسی حتی خود شما نمایش داده نمیشه و حتی غیر قابل حذف کردن میشه ! برای برگردوندن به حالت عادی از دستور زیر استفاده کنید :cacls &lt;Folder or File Path&gt; /p everyone:fتمام . تمام چیزی که شما نیاز داشتید رو در بهترین حالت یاد گرفتید .نتیجه گیریدر کل من دوست داشتم که چیزی رو که تازه یاد گرفتم و به کارم اومد و کاربردی بود رو به اشتراک بزارم و از طرفی کسی این محتوا رو نداشته و من خوشحالم که اولین بودم . امیدوارم که براتون کاربردی بوده باشه و همینطور نظر شما رو جلب کرده باشه . حتما نظراتتون رو برام کامنت کنید و اگر مطلبی هست پیشنهاد بدید که بسازم ( یا نوشته یا فیلم یا پادکست و ... )سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Sat, 27 Aug 2022 23:19:13 +0430</pubDate></item><item><title>پروژه کوتاه کننده URL با پایتون در ۳ خط !</title><link>https://virgool.ir/@aliakbar.zohour/پروژه-کوتاه-کننده-url-با-پایتون-در-۳-خط-kyuaibnrwqtm</link><description>تایتل رو درست خوندید . در سه خط . از پایتون اینجور برنامه ها رو خیلی دیدید که یکسری برنامه رو توی دو تا پنج خط جمع میکنه و شما با خودتون میگید که مگه میشه , مگه داریم . . . قراره چیکار کنیم ؟پروژه کوتاه کننده آدرس برای برنامه نویس ها خیلی مهمه چون از اون پروژه هاس که نشون میده شما چقدر به ابزار ها مسلط هستین و این رو نشون میده که چرخ رو دوباره اختراع میکنید یا نه . ( البته این برداشت منه ) و جدا از اینکه این پروژه چقدر مهم و فان هستش میتونه گاهی وقت ها کاربردی باشه ...خوب دیگه توضیح نمیدم و بریم که شروع کنیم ...برای اینکار توی پایتون ما یه کتابخونه داریم که کار رو برای ما ساده میکنه . دستور زیر رو توی ترمینال بزنید تا کتابخونه رو نصب کنید :python3 -m pip install pyshortenersو بعد از اینکه نصب شد حال بریم که برنامه رو بنویسیم . مراحل کار  - اول اینکه کتابخونه رو ایمپورت میکنیم . - و توی دومین حرکت آدرس ورودی رو از کاربر میگیریم .  - و توی حرکت آخر با استفاده از کتابخونه قشنگمون کوچیک شده لینک رو برای کاربر نمایش میدیم .و تمام ... و این هم کد :import pyshorteners&#xA;input = input(&#34;Enter a link: &#34;)&#xA;print(&#34;Shortened link: &#34; + pyshorteners.Shortener().tinyurl.short(input))پوینت این کد اینه که همه لینک ها رو کوچیک میکنه ( یکسری از لینک ها این اجازه رو به شما نمیدن که اون ها رو کوچیک کنید , مثل یوتیوب و غیره . ولی این کد این اجازه رو به شما میده که همه لینک ها رو کوچیک کنید ). البته این کار رو با استفاده از سرویس tinyUrl انجام میده و باید از اون تشکر کرد .نتیجه گیری خوب دوستان این یه راهنمای سریع برای یه پروژه بدرد بخور رزومه ای بود که میتونه به شما توی مسیرتون کمک کنه . سعی کردم مطلب خودمونی باشه و البته سریع . اگر موردی بود حتما توی کامنت ها بهم بگید و اگر نسخه تمیز این کد رو خواستین به لینک زیر برید :https://github.com/aliakbarzohour/Url_Shortenerسالم و سلامت باشید . . . </description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Fri, 22 Jul 2022 02:29:44 +0430</pubDate></item><item><title>آشنایی با فریمورک Blazor</title><link>https://virgool.ir/@aliakbar.zohour/آشنایی-با-فریمورک-blazor-f4br0zlefbdl</link><description>اگر شما در دنیای فرانت اند فعالیت میکنید به احتمال ۱۰۰ درصدی با یک فریم ورک و یا کتابخانه جاوااسکریپتی کار میکنید و شاید حتی فکر این رو هم نکرده باشید که مایکروسافت با ارائه blazor که بر اساس زبان برنامه نویسی #C هستش , دقیقا فرانت اند کار ها رو هدف گرفته و با این سابقه ای که مایکروسافت داره و بیشتر از ۷۰ درصد ما با محصولات اون زندگی میکنیم , ممکنه دنیای فرانت اند ( طراحی وب - برنامه نویسی وب ) کاملا تغییر کنه . قراره درباره چی صحبت کنم ؟توی این مطلب درباره فریم ورک blazor صحبت میکنم و این مطلب بیشتر یه معرفی هستش و این امکان و شناخت رو به شما میده که شروع کنید به تست کردن . معمولا میبینیم که توی کمپانی ها , زمانی که از angular یا فریم ورک های دیگه جاوااسکریپتی برای فرانت اند  وب استفاده میکنن , برای بک اند از net core. استفاده میکنن و معتقدن که سازگاری بیشتری داره ( و صد البته که من با این موضوع مخالفم و اعتقاد دارم که اگر سازگاری بیشتری توی وب میخوایم باید کلا از جاوااسکریپت استفاده کنیم ) . معمولا #C و Net. و بقیه فریم ورک های سی شارپ برای بک اند استفاده میشدن و البته که قوی توی این حوزه ظاهر شدن و کارایی خوبی داشتن و دارن . ولی مایکروسافت با ارائه این فریم ورک به کاربر ها این اجازه رو داده که حالا بتونن با دانشی که از فرانت اند دارن و به کمک سی شارپ , محیط فرانت اند رو در کنار بک اند بر پایه Net. دولوپ کنن . یه موضوع جالب این وسط پیش میاد که اونم اینه که ما توی این محیط از جاوااسکریپت استفاده نمیکنیم و فقط و فقط باید از #C استفاده کنیم . میتونه برای بعضی ها جالب باشه و برای بعضی ها هم میتونه ترسناک باشه .این فریم ورک به ما این اجازه رو میده که اطلاعات رو بین فرانت اند و بک اند در بستر دات نت منتقل ( Share ) کنیم . یعنی عملا اگر شما #C و دات نت رو به عنوان بک اند بلد باشید و این فریم ورک رو یاد بگیرید عملا شما یه فول استک دولوپر محسوب میشید . صد البته اگر بخوایم مفهوم فول استک دولوپینگ رو توی سال ۲۰۲۲ روی این بستر پیاده سازی کنیم میشه فرانت اند با blazor بک اند با NET. دو آپس با Azure و سیستم عامل ویندوز و چیزای دیگه که همگی روی بستر مایکروسافت هستن و این خیلی خیلی هیجان انگیز و جالب هستش . این فریم ورک با کمک داکر به یکپارچه شدن اپلیکیشن شما کمک میکنه و میبینید که این هم یکی از آپشن های این فریم ورک محسوب میشه . و طبق داکیومنت های مایکروسافت شما با ترکیب دات نت و blazor میتونید که اپلیکیشن های ترکیبی موبایل , وب و دسکتاپ بسازید . بنفیت ( مزیت ) سی شارپ ( دات نت ) اینه که قابل اطمینان به لحاظ لاجیک و سینتکس هستش و نسبتا امن تر از بقیه فریم ورک ها هستش و خوب قدرت دانت نت هم مثل پایتون , کتابخانه های اون هستش که این هم میتونه مزیت جالبی باشه . به لحاظ آسونی دولوپ کردن برنامه شما میتونید توی هر سیستم عاملی از جمله لینوکس , مک , ویندوز و یا کروم او اس و چیزای دیگه اون رو دولوپ کنید . فقط کافیه که وی اس کد ( Vscode ) و Visual Studio Code رو نصب کنید و شروع کنید . یه تیکه کد در بستر blazor رو براتون میزارم تا ببینید که چطور کار میکنه :&lt;div class=&#34;card&#34; style=&#34;width:22rem&#34;&gt;&#xA;    &lt;div class=&#34;card-body&#34;&gt;&#xA;        &lt;h3 class=&#34;card-title&#34;&gt;@Title&lt;/h3&gt;&#xA;        &lt;p class=&#34;card-text&#34;&gt;@ChildContent&lt;/p&gt;&#xA;        &lt;button @=&#34;OnYes&#34;&gt;Yes!&lt;/button&gt;&#xA;    &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;@code {&#xA;    [Parameter]&#xA;    public RenderFragment? ChildContent { get; set; }&#xA;&#xA;    [Parameter]&#xA;    public string? Title { get; set; }&#xA;    private void OnYes()&#xA;    {&#xA;        Console.WriteLine(&#34;Write to the console in C#! &#39;Yes&#39; button selected.&#34;);&#xA;    }&#xA;}شاید تیکه کد بالا برای بعضی ها ترسناک و غیر قابل فهم باشه ولی برای کسی که برنامه نویسی رو درک کرده کاملا مفهومه که کد بالا چه کاری رو انجام میده . در کل من توی این مطلب تمام چیز های که باید در شروع درباره این فریم ورک میدونستید رو گفتم و تلاش کردم کمک کنم که شروع کنید و بازم میگم که این به این معنی نیست که این آینده وب هستش و نمیدونم جو دادن های دیگه . . . من دارم میگم که این یه تکنولوژی هست که برای فرانت اند کار کردن در بستر مایکروسافت فوق العاده عالیه و اگر دوست دارید اون رو تست و استفاده کنید . نتیجه گیریدر کل توی این مطلب سعی کردم که این فریم ورک کاربردی رو براتون معرفی کنم تا بتونه به فرانت اند کار ها کمک کنه و یا یه آشنایی بده . میتونه برای کسانی که کلا روی بستر مایکروسافت کار میکنن فوق العاده کاربردی و خفن باشه و بازم اون بستگی به استفاده شما و نوع خواسته شما داره .قطعا این مطلب از این بهتر میشد و این مطلب کاملی درباره این فریم ورک نبود و شما موقعی این مطلب رو کامل میکنید که تجربه های خودتون رو به اشتراک بزارید . امیدوارم که این مطلب برای شما مناسب بوده باشه و اگر براتون کاربردی و لذت بخش بود حتما توی کامنت ها من رو در جریان بزارید و اگر ایرادی هست حتما بهم بگید تا اون رو اصلاح کنم . منابعوب سایت blazor === &gt; لینک ورود - داکیومت های رسمی مایکروسافت برای فریم ورک blazor === &gt;  لینک ورودسلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Wed, 29 Jun 2022 00:02:07 +0430</pubDate></item><item><title>معرفی کتابخانه react-twitter-embed</title><link>https://virgool.ir/@aliakbar.zohour/معرفی-کتابخانه-react-tweeter-embed-o9ymlcmfwf5y</link><description>در یک جمله این کتابخانه به ما کمک میکنه که به ساده ترین حالت ممکن ویجت های توییتر رو به پروژه ری اکت  خودمون اضافه کنیم . توی این مطلب میخوام کتابخانه react-twitter-embed رو معرفی کنم که ممکنه برای برنامه نویس ها مخصوصا برای برنامه نویس های فرانت مناسب باشه .معرفی پروژه من طی پروژه ای که پیاده سازی کردم و توی اون نیاز بود که به ویجت های توییتر دسترسی داشته باشم با این پروژه آشنا شدم و دیدم که خیلی کاربردیه و میتونه برنامه نویس های فرانت رو خیلی جلو بندازه . این کتابخانه به ما اجازه میده که به اصطلاح کارای توییتری انجام بدیم و مثلا به توییت های یک شخص خاص دسترسی داشته باشیم و یا مثلا اکانت ها رو توی برنامه خودمون داشته باشیم و ...شما این پروژه رو میتونید روی پروژه های ری اکتی و تایپ اسکریپتی و یا توی پروژه هایی بر بستر next.js ران کنید و بعد از نصب کردن تنها کاری که لازمه انجام بدید اینه که ماژول های مختلف رو ایمپورت کنید و استفاده کنید . مثلا این نمونه ایمپورت برای ایمپورت کردن تایم لاین های توییتر هستش :import { TwitterTimelineEmbed, } from &#39;react-twitter-embed&#39;;و بعد از ایمپورت تنها کاری که لازمه انجام بدید اینه که از کامپوننت های این کتابخانه استفاده کنید . به عنوان مثال :&lt;TwitterTimelineEmbed&#xA;  sourceType=&#34;profile&#34;&#xA;  screenName=&#34;aliakbarzohour&#34;&#xA;  options={{height: 400}}&#xA;/&gt;این تکه کد , تکه کدی بود که من خودم داخل پروژم استفاده کردم و باید بگم که نحوه استفاده خیلی راحت و ساده ای داره . توی بخش screenName شما میتونید نام کاربری یک شخص خاصی رو وارد کنید و آخرین توییت های اون شخص رو دریافت کنید . استفاده از این کتابخانه میتونه توی بخش هایی که نیاز به ویجت های توییتر دارید کمکتون کنه و من هم چون ازش استفاده کردم و برام کاربردی بود اون رو معرفی کردم و امیدوارم که برای شما هم مناسب باشه . نتیجه گیری دوست داشتم که این کتابخانه باحال و کاربردی رو براتون معرفی کنم که هم مطلب فارسی در این باره وجود داشته باشه و هم اینکه ممکنه برنامه نویس های ایرانی به این کتابخانه نیاز پیدا کنن و من خوشحال میشم که مطلب من راهنمایی اونا باشه . سعی کردم مطلب خیلی کوتاه و کاربردی باشه . امیدوارم که این مطلب برای شما مناسب بوده باشه و خوشحال میشم که نظراتتون رو برام کامنت کنید . . . --- لینک کتابخانه ===&gt; react-twitter-embedسالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Wed, 11 May 2022 14:44:35 +0430</pubDate></item><item><title>برنامه نویسی ASMR چیست ؟</title><link>https://virgool.ir/Rocket/برنامه-نویسی-asmr-چیست-sg65mttcmbri</link><description>اگر برنامه نویس یا نویسنده هستید حتما براتون پیش اومده که گاهی وقت ها توی سکوت کامل فقط تایپ کردید و از صدای کیبورد بینهایت لذت بردید , من هم که الان دارم این متن رو مینویسم , از صدای کیبورد لذت میبرم .  معمولا به مورمور شدن و احساس کردن موج لذت بخش توی سرشانه  ASMR میگن که برای هر کسی میتونه هر چیزی باشه , ولی معمولا برای برنامه نویس ها این لذت توی صدای کیبورد پیدا میشه .. .موضوع چیه ؟میخوام درباره برنامه نویسی به سبک ASMR صحبت کنم و اگر بخوام در کل ASMR رو توضیح بدم معمولا وقتی ما در حین استفاده کردن از چیزی یک حس لذتی رو احساس میکنیم که معمولا هم به اون اعتیاد پیدا میکنیم ( به شوخی ) ASMR میگیم . برنامه نویس ها چون خیلی با کیبورد سر و کار دارن معمولا به صدا و اون حس تایپ کردن اعتیاد پیدا میکنن و ازش لذت میبرن . میشه گفت که تایپ کردن ASMR برنامه نویس هاست و این داستان وقتی شدید تر میشه که کیبورد از حالت عادی به مکانیکی تبدیل میشه ? . من خودم از وقتی کیبورد مکانیکی گرفتم فهمیدم که این حس رو دارم و دیگه نتونستم ازش دل بکنم . حالا که میدونیم این حس چیه و چرا برنامه نویس ها این حس رو دارن بریم سراغ اینکه برنامه نویسی به سبک ASMR چیه و چرا حال میده . . .سبک ASMRبرنامه نویسی به سبک ASMR سبکی هست که توی اون در سکوت کامل فقط مشغول به تایپ کردن میشین و از صدای کیبورد لذت میبرید .ایده این نوع برنامه نویسی زمانی بوجود اومد که یکی از برنامه نویس هایی که یوتیوبر بود بعد از دیدن اینکه غذا رو به این سبک فیلم برداری میکنن و صداشو ظبط میکنن ( خداروشکر که این دوران تموم شد  ) به فکرش میرسه که ویدئو ظبط کنه و توی اون از کیبوردش فیلم بگیره و لایو شروع به کد نویسی کنه ! این ایده گرفت و تصویری که بالا دیدید صحنه ای از فیلم این آقا هستش . البته الان بیشتر سبک فیلم برداری و ویدئو سازی هستش ولی شما میتونید توی حس و حال خودتون این سبک رو پیاده کنید . این ویدئو هم یکی از ویدئو هایی هست که ایشون ظبط کرده و یه بازی اسنک رو با پایتون مینویسه .. شاید براتون جالب باشه . https://youtu.be/Wlu4MsBnjukنتیجه گیری در کل دوست داشتم با این نوع از برنامه نویسی آشنا بشید و اگر دوست دارید که من خودم این مدلی ویدئو ظبط کنم حتما بهم بگید . نظرتون رو درباره این مطلب بنویسید و ایراد ها رو بگید . سالم و سلامت باشید  . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Sat, 30 Apr 2022 23:51:39 +0430</pubDate></item><item><title>زوم کردن عکس در انگولار</title><link>https://virgool.ir/@aliakbar.zohour/زوم-کردن-عکس-در-انگولار-h5sawbf8ykkt</link><description>عکس ها در بخش فرانت اند به طور پیشفرض غیرقابل زوم هستن و اگر برنامه نویس فرانت اند هستید حتما گاهی وقت ها نیاز پیدا میکنید که عکس های صفحه رو قابل زوم کنید و کاری کنید که با حالت های دست , زوم و آنزوم بشه . قطعا شما باید از ابزار های مناسب این کار استفاده کنید که من توی این مطلب به طور ویژه روی ابزار های مربوط به فریمورک انگولار تمرکز میکنم .داستان چیه ؟داستان از جایی شروع شد که من توی یکی از تسک های مربوط به شرکتی که باهاش کار میکنم , باید عکس ها رو قابل زوم میکردم و کاری میکردم که اون عکس حتما قابلیت این رو داشته باشه که با حالت های دست زوم و آنزوم بشه . نکته اینه که من باید کد های مناسب انگولار رو استفاده میکردم و بعد از کلی تست کردن به یک کتابخانه رسیدم که بهتر از همه بود و به خوبی به من کمک کرد . و حالا میخوام توی این مطلب این کتابخانه رو معرفی کنم و یک تکه کد ساده رو هم بهتون بگم . کتابخانه  ngx-pinch-zoomاین کتابخانه به ما کمک میکنه که حالت های بزرگنمایی و یا کوچکنمایی و حرکت دادن تصویر در حالت زوم رو بوجود بیاریم . این کتابخانه خیلی خیلی کم حجمه و برای استفاده کردن در پروژه های بزرگ شرکتی فوق العاده مناسبه . شما میتونید به این کتابخانه متن باز توی بهتر شدنش کمک کنید و یا حتی میتونید که نظرات خودتون رو براشون بفرستید . نحوه نصب و راه اندازیخوب حالا که با این کتابخانه آشنا شدیم وقتشه که کار باهاشم یاد بگیریم . اول از همه باید اون رو در فولدر پروژه نصب کنیم . از دستور زیر استفاده کنید :npm i ngx-pinch-zoom  و در مرحله بعدی باید اون رو توی بخش انگولار ماژول ایمپورت کنیم . کد زیر رو دنبال کنید :import { PinchZoomModule } from &#39;ngx-pinch-zoom&#39;;&#xA;&#xA;@NgModule({&#xA;    imports: [ PinchZoomModule ]&#xA;})نکته مهم : حتما قبل از ایمپورت کردن کتابخانه , برنامه رو از حالت اجرا خارج کنید .استفاده کردنو بعد از اینکار های حالا شما میتونید از امکانات این کتابخانه استفاده کنید . برای استفاده کردن از این کتابخانه , باید عکس خودتون رو بین تگ &lt;pinch-zoom&gt; قرار بدید . کد زیر رو دنبال کنید :&lt;pinch-zoom&gt;&#xA;    &lt;img src=&#34; path_to_image &#34; /&gt; &#xA;&lt;/pinch-zoom&gt;نکته مهم اینه که حتما این متا تگ رو در بخش html اصلی قرار بدید :&lt;meta name=&#34;viewport&#34; content=&#34;width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no&#34;&gt;کلی خاصیت و ماژول توی این کتابخانه وجود داره که میتونید اون ها رو نگاه کنید و اگر دوست داشتید استفاده کنید ( لینک کتابخانه رو آخر مطلب میزارم ). ولی به طور کلی , کدی رو که نیاز دارید رو من قرار میدم و اون کد رو توضیح میدم :&lt;pinch-zoom [limit-zoom]=&#34;3&#34; [ double-tab ]=&#34;true&#34;&gt;     &#xA;    &lt;img src=&#34; path_to_image &#34; /&gt;  &#xA;&lt;/pinch-zoom&gt;شما توی بخش llimit مشخص میکنید که عکس شما در چه حدی زوم بشه که من توی این کد زدم ۳ برابر . و توی بخش double-tab ما میگیم که با دوبار کلیک کردن دست این عکس زوم بشه یا نه ؟ که من توی این کد زدم که بشه .کلی امکانات دیگه رو دارید مثل انیمشن زوم و تاخیر زوم و خیلی چیز های دیگه که میتونید نحوه استفادشو یاد بگیرید . نتیجه گیریمن خوشحالم که به عنوان اولین نفر و احتمالا آخرین نفر درباره این مساله مطلب نوشتم . در کل این مطلب رو نوشتم تا برنامه نویس های انگولار مطلب فارسی در این باره داشته باشن و اگر انگلیسی خوبی ندارن بتونن فارسی مطلب یاد بگیرن . این خیلی مهمه که به هم کمک کنیم . امیدوارم این مطلب برای شما مناسب بوده باشه و تونسته باشه به شما کمک کنه . برای دیدن این کتابخانه رو این لینک کلیک کنید .سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Sat, 12 Mar 2022 01:21:54 +0330</pubDate></item><item><title>بهترین پروژه های انگولار</title><link>https://virgool.ir/@aliakbar.zohour/بهترین-پروژه-های-انگولار-f6ivnuhxhdd2</link><description>اگر برنامه نویس وب هستید و تازه کار با انگولار رو شروع کردید و یا حتی اگر خیلی وقته که با انگولار کار میکنید و میخواید یه پروژه و یا مینی پروژه پیاده سازی کنید , این مطلب برای شما مناسبه .قراره چی بگم ؟اگر تازه کار با انگولار رو شروع کردید و میخواید کار پیدا کنید , حتما باید یه پروژه داشته باشید تا بتونید مهارت های خودتون رو نشون بدید . قراره که چند تا پروژه خیلی خوب رو معرفی کنم تا شما با استفاده از انگولار اون ها رو پیاده کنید و در کنار تجربه و مهارت , یه رزومه قدرتمند برای خودتون بسازید .اگر میخواید یکی از تجربه های باحال من رو موقع پیدا کردن کار بخونید  , روی این لینک کلیک کنید .معمولا توی همچین مواقعی توی گوگل سرچ میکنید angular simple project و به احتمال زیاد مطالب خوبی رو پیدا میکنید ولی اگر توی گوگل به فارسی همچین چیزی رو سرچ کنید , چیزی پیدا نمیکنید . پس من این مطلب رو مینویسم که اگر فارسی سرچ کردید , مطلب فارسی خوب پیدا کنید . اصل مطلبهمونطور که گفتم شما لازم دارید که حداقل یه مینی پروژه داشته باشید تا بتونید توی موقعیت برنامه نویس انگولار مشغول به کار بشید و در کنار اینکه شما خودتون رو برای کار آماده میکنید و برای خودتون تجربه و نمونه کار میسازید , میتونید بفهمید که واقعا در چه سطحی هستید . نسخه جدید انگولار از همیشه قوی تره و از ری اکت و ویو سرعت بیشتری رو داره و در کنار اینها شما میتونید با استفاده از ابزار های انگولار , اپ های قدرتمندی مثل Gmail و یا Youtube TV بسازید .  من اینطور در نظر گرفتم که شما css و فریم ورک هاش رو به خوبی بلدید و تمرکزم رو فقط روی بخش کار با انگولار و تایپ اسکریپت میزارم . خوب حالا که متوجه این شدید که چرا باید پروژه بسازید و من چرا این مطلب رو نوشتم , بریم که پروژه ها رو معرفی کنم ...۱ - موزیک پلیر ( Sound node )این پروژه بخاطر کار با روتر ها و همینطور کار با api و خیلی چیز های دیگه ارزش بالایی داره . شما میتونید با استفاده از Api هایی که اسپوتیفای و یا ساوند کلاد ارائه میدن , هزاران آهنگ رو در قالب یک برنامه به کاربر ارائه بدید ! اینجوری تصور کنید که انگار دارید اسپوتیفای ۲ رو میسازید یا به قول برنامه نویس ها چرخ رو دوباره اختراع میکنید . این رو در نظر بگیرید که این پروژه برای تمرین فوق العادست و هم اینکه شما میتونید ایده هایی که برای همچین سرویس هایی دارید رو توی پروژه خودتون پیاده کنید .اگر برنامتون خیلی خوب شد میتونید اون رو به اپ های موبایلی و یا اپ دسکتاپ تبدیل کنید و توی فروشگاه هایی مثل گوگل پلی و فروشگاه هایی که میشناسین آپلود کنید .۲ - صفحه لاگین این یه پروژه فوق العاده برای تازه کار ها هستش و شما میتونید باهاش یه بخش احراز هویت خیلی خیلی ساده انجام بدید .اهمیت این پروژه به دیتا بایندینگ و در بخش های بالاتر بخش فرم های انگولار خیلی خیلی اهمیت پیدا میکنه .  شما میتونید صفحه ای بسازید که اگر نام کاربری مساوی مثلا admin و پسورد مساوی 1234 بود , به شما یه صفحه خوش آمد گویی نشون بده . اگر یه بک اند هم بلدید میتونید بخش ثبت نام رو هم به راحتی پیاده کنید . البته میتونید از بخش لوکال استورج های انگولار استفاده کنید و یه پروژه خیلی حرفه ای داشته باشید۳ - ادمین پنل ادمین پنل یه پروژه خیلی کامله چون با دیتا های مختلف و همینطور با بخش های مختلفی کار میکنه . از جاهای مختلفی از برنامه دیتا میگیره و به نمایش میزاره , اطلاعات فرم ها رو ذخیره میکنه , تعداد کاربر ها رو نمایش میده و خیلی چیز های دیگه که میتونید باهاشون کار کنید .این پروژه کلا پر اهمیته و الزاما اهمیت خاصی نداره چون داره با همه چی کار میکنه مثل فرم ها , روتینگ , api و خیلی چیز های دیگه . میتونید با استفاده از بوتسترپ و یا هر فریم ورک سی اس اسی اون رو خوشگل کنید و برای بقیه بزارید ( حتی اون رو بفروشید! ) . ۴ - کتاب داستان این قطعا یه پروژه فانه ! ولی شما میتونید اون رو بسازید و مثلا داستان لینوکس رو با استفاده از api بگیرید و یا خودشو خیلی کامل دانلود کنید و اون رو توی پروژه انگولارتون استفاده کنید . بنا به نحوه ساختن پروژه , میتونه اهمیت های مختلفی پیدا کنه , مثل استفاده از روتینگ و غیره . شما میتونید مثلا این کار رو انجام بدید که اگر کاربر کتاب رو تا صفحه ۲۰ پیش برده و برنامه رو میبنده , اگر دوباره اون برنامه رو باز کرد , برنامه از صفحه ۲۰ شروع بشه و مثلا نره از اول .۵ - وبلاگ شخصی این پروژه خیلی خیلی میتونه برای شما خوب و تکمیل باشه , چون هم برای خودتون تبلیغ میکنید و هم میتونید برنامه خودتون رو هر طوری که دوست دارید و با استفاده از ابزار های انگولار پیاده کنید و اون رو مثلا توی گیت ها هاست کنید . نیازی نیست که یه وبلاگ بلند و بالا و خفن درست کنید , میتونید در حد سه صفحه خودتون رو معرفی کنید , شبکه های اجتماعی تون رو لینک کنید و در نهایت میتونید دستاورد های خودتون رو به نمایش بزارید .دیگه ؟؟؟تا بینهایت میشه پروژه معرفی کرد برای انجام دادن , شما میتونید از ایده های من هم ایده بگیرید و حتی پروژه دلخواه خودتون رو بسازید . پروژه های خفن دیگه ای هم هستن مثل نوت پد , گوگل مپ , کوتاه کننده آدرس و غیره که میتونید اون ها رو پیاده کنید . سعی کنید بخش های مختلف رو درک کنید و کنار هم بچینید , این خیلی مهم تر از مهارته ! نتیجه گیریمن این مطلب رو نوشتم تا هم در دنیای وب فارسی مطلب مفیدی ارائه داده باشم و هم اینکه تجربیاتم رو به اشتراک بزارم . در نهایت برنامه نویس های حرفه ای برای خودشون پروژه میسازن و نیازی به راهنمایی من ندارن , ولی من این مطلب رو بیشتر برای تازه کار ها و سطح های متوسط نوشتم تا بتونم به پیشرفتشون کمک کنم . انگولار فریم ورک قدرتمندیه و کمتر کسی اون رو بلده و هر کسی هم بلده , یه امتیاز بزرگ در دنیای فرانت داره , پس اگر اون رو بلدید به خودتون افتخار کنید . سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Mon, 28 Feb 2022 01:37:42 +0330</pubDate></item><item><title>آشنایی با مفهوم Encapsulation</title><link>https://virgool.ir/Solidity/آشنایی-با-مفهوم-encapsulation-svkx4rpnljjt</link><description>امروز میخوام درباره مفهومی صحبت کنم که تقریبا تمام برنامه نویس ها باهاش دارن سر و کله میزنن و میتونم بگم که اگر این رو درک کنید , در برنامه نویسی یک پله بالا تر میرید . اگر برنامه نویس هستید این مطلب برای شما مناسبه .کپسوله کردن به چه معناست ؟زمانی که شما دارید یک پروژه بزرگ رو کد میزنید , باید کدی بنویسید که به تمام برنامه آسیبی وارد نکنه و کد های دیگه رو تغییر نده . بعضی از زبان ها به طور کلی این موضوع رو کنترل میکنن ولی شما به عنوان برنامه نویس باید حواستون به این نوع از کد نویسی باشه . اصطلاح کپسوله کردن دقیقا به همین اشاره میکنه . به این فرم که شما به عنوان مثال یه کلاسی دارید که داخل اون کلی متغیر و متد و خیلی چیز های دیگه هست و وقتی که اون کلاس رو توی یه جایی از پروژه فراخوانی میکنید , نباید متغیر ها و متد های داخل اون کلاس , روی کلاس های دیگه تاثیری بزارن .کپسوله کردن یا اصطلاحا انکپسولیشن ( Encapsulation ) این مفهوم برای تمام زبان های برنامه نویسی مشترکه و فرقی نمیکنه که شما با چه زبونی دارید کد نویسی میکنید .اگر برنامه نویس فرانت اند هستید هم باید این رو بگم که توی فریم ورک هایی مثل انگولار شما باید حتما بگید که کامپوننت من باید کپسوله باشه ( که البته به صورت دیفالت روی همون حالت تنظیمه  ) . و بقیه فریم ورک ها هم این داستان رو دارن . نتیجه گیریشما با خوندن این مطلب با مفهوم انکپسولیشن به خوبی آشنا شدید و میتونید کد های بهتری رو بنویسید . من میخواستم شما با خوندن این مطلب در یک دقیقه با این مطلب خیلی مهم آشنا بشید و بتوند کارهاتون رو پیش ببرید . امیدوارم که تونسته باشم این خواسته رو برآورده کنم . اگر این نوشته مشکلی داشت حتما برام بنویسید تا ازش مطلع بشم . سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Sun, 20 Feb 2022 03:37:26 +0330</pubDate></item><item><title>روش یادگیری کوانتومی ریچارد فایمن</title><link>https://virgool.ir/@aliakbar.zohour/روش-یادگیری-کوانتومی-ریچارد-فایمن-ncrzv7jbld0v</link><description>توی این مطلب میخوام یک روش یادگیری که مطعلق به ریچارد فیمن بوده رو بهتون یاد بدم تا سخت ترین چیز ها رو به سریع ترین روش ممکن یاد بگیرید . این مطلب برای تمام انسان ها مناسب و لازم هست .قراره درباره چی صحبت کنم ؟قراره درباره روش یادگیری کوانتومی ریچارد فایمن صحبت کنم که از ماندگار ترین روش های یادگیری , مخصوصا برای چیز های سخته . شما میتونید از این روش برای یادگیری دروس دانشگاهی , برنامه نویسی , زبان و ... استفاده کنید .ریچارد فایمن ؟ریچارد فایمن ( Richard Feynman ) فیزیکدان برجسته آمریکایی بود که در سال ۱۹۸۸ از دنیا رفت . ریچارد فیمن جزو ده فیزیکدان برتر تاریخ هستش که نقش خیلی مهمی در ساخته شدن اولین بمب اتم داشت . ریچارد فیمن همچنین استادی بود که به عنوان نابغه ازش یاد میکردن و به این موضوع مشهور بود که سخت ترین مباحث فیزیک رو به راحتی به دانشجویان خودش درس میده و اینکه اون روشی داشت که هر چیزی رو به سریع ترین روش ممکن و به درست ترین شکل ممکن یاد بگیره و یاد بده !روش کوانتومیاسم این نوع از یادگیری رو روش کوانتومی گذاشتن و دیگه اسمش رو تغییر ندادن و واقعا که اسم خوبی داره . این روش به طوریه که شما دیگه یک موضوع رو حفظ نمیکنید , بلکه اون موضوع رو با تمام وجودتون درک میکنید و دیگه اون موضوع از یاد شما نمیره !روش یادگیریمن مراحل یادگیری به روش کوانتومی رو به شما میگم و اگر به این مراحل عمل کنید , قطعا نتیجه میگیرید :۱ - مشخص کردن موضوع اولین قدم اینه که شما دقیقا بدونید که چه چیزی میخواید یاد بگیرید .۲ - برداشتن یک کاغذبعد از مشخص شدن موضوع یادگیری , شما باید یه کاغذ سفید بردارید و بالای اون برگه , عنوان چیزی رو که میخواید یاد بگیرید , بنویسید .۳ - فهم موضوع به سراغ موضوعی برید که میخواید یاد بگیرید و سعی کنید که اون مطلب رو بفهمید ( نه اینکه حفظ کنید ) ریچارد فایمن به این حرف معتقد بود که اگر مطلبی رو حفظ کنید , دیر یا زود اون رو فراموش میکنید , پس بهتره که جای حفظ کردن , اون مطلب رو بفهمید .۴ - تدریسسعی کنید موضوعی رو که فهمیدید روی کاغذ سفیدی که برداشتید بنویسید , طوری که انگار دارید اون رو تدریس میکنید !  ( قرار نیست تا سه دفعه اول آسون باشه )۵ - بررسی تا اینجای کار شما دقیقا مطلبی رو که میخواستید یاد بگیرید , یاد گرفتین و حالا باید تمام اون برگه رو یک بار از بالا تا پایین بررسی کنید که این کار حکم محکم کاری رو داره و باعث میشه که اون موضوع یادتون بمونه .و تمام ! شما با روش یادگیری کوانتومی که میراث ریچارد فایمن بود آشنا شدید و میتونین باهاش زندگی خودتون رو راحت تر کنید .نتیجه گیریمن به شدت به امر اعتقاد دارم که دانسته هامون رو باید با هم به اشتراک بزاریم تا بتونیم زندگی هامون رو راحت تر جلو ببریم . من بهش عمل کردم و چیزی رو که دوسال باعث پیشرفتم شده رو بهتون یاد دادم .  قرار نیست توی دفعات اول براتون راحت باشه , ولی مطمئن باشید که جواب میده ...سالم و سلامت باشید . . . </description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Sun, 13 Feb 2022 18:01:57 +0330</pubDate></item><item><title>بهترین روش های رمز نگاری برای وب</title><link>https://virgool.ir/@aliakbar.zohour/بهترین-روش-های-رمز-نگاری-برای-وب-bsmaaf6uuudt</link><description>امروز میخوام به شما بهترین و امن ترین هش ها ( hash function ) برای رمز نگاری وب رو معرفی کنم و هر کدوم رو برای شما مقایسه کنم . اگر برنامه نویس وب هستید این مطلب برای شما مناسبه .موضوع چیه ؟اگر برنامه نویسی وب انجام میدید ( مخصوصا بک اند ) , مجبورید که اطلاعات کاربر رو از سمت فرانت دریافت کنید و اون ها رو رمز نگاری کنید . چرا باید این کار رو انجام بدید ؟ برای اینکه جلوی هکر ها رو بگیرید تا به اطلاعات کاربران شما دسترسی پیدا نکنن .معمولا برنامه نویس ها از الگوریتم های مختلفی برای رمز نگاری استفاده میکنن و هر کدوم هم به نظر خودشون مناسب هست , ولی من با توجه به ترند های جهانی امروز میخوام بهتون بگم که کدوم روش رمز نگاری نسبتا امن تر هستش .شما برای رمز نگاری کردن اطلاعات کاربران نیاز به هش فانکشن ها دارید . . .هَش فانکشن Hash Function چیست ؟به زبان خیلی ساده , هش فانکشن ها , تابع هایی هستند که اطلاعات رو دریافت میکنن و اون ها رو رمز نگاری میکنن . مثلا ۱۲۳ میشه khj@#%jksjdf@$(jdkj .یک هش فانکشن باید خاصیت های زیر رو داشته باشه :سریع باشه .بتونه اطلاعات نامحدودی رو دریافت کنه و اون ها رو هش کنه .بتونه هش های یونیک تولید کنه ( هش هایی که شبیه به هم نیستن ). بتونه اطلاعات ورودی از اینپوت ها رو متفاوت از هم هش کنه .الگوریتم خیلی مشخصی نداشته باشه .این ها به طور کلی خاصیت های یک هش فانکشن هستن , ولی معمولا هش ها طول ثابتی دارن که اون ها رو قابل هک میکنه و معمولا هم کاریش نمیشه کرد .بهترین هش فانکشن ها چندین هش فانکشن وجود داره که با وجود آسیب پذیری های گزارش شده , باز هم امنیت رو برقرار میکنن وتا حد زیادی قابل قبول هستن . به طور کلی هیچ روش رمز نگاری ایده آلی وجود نداره که غیر قابل هک باشه . چند تا از هش فانکشن های معروف رو معرفی کنم و اگر دوست داشتین مطالب رو عمیق تر یاد بگیرین با سرچ شروع به یادگیری کنید .رمز نگاری MD5این نوع هش فانکشن رمز های ۱۲۸ بیتی تولید میکنه که در چند سال گذشته با آسیب پذیری هایی که از این هش فانکشن پیدا شد دیگه امنیت سابق رو نداره , ولی هنوز هم برای انتقال فایل ها از این هش فانکشن استفاده میکنن .خوانواده shaعبارت SHA مخفف Secure Hash Algorithm هستش و خانواده sha معمولا بین هش فانکشن ها در تمام زبان های برنامه نویسی معروف هستن و تا حد قابل قبولی عملیات رمز نگاری رو انجام میدن و من سه تا از بهترین ها رو معرفی میکنم .1 - SHA1این یکی از اولین الگوریتم های رمز نگاری این حوزه بوده و در عین حال خیلی هم خوب عمل کرده ( البته تا جایی که من اطلاع دارم ) . این نوع هش فانکشن , هش هایی با طول ۱۶۰ بیت تولید میکنه و به طور خیلی جالبی از md5 نا امن تره !2 - SHA2شاید بگم که این نوع الگوریتم , بهترین روش رمز نگاری محسوب میشه . sha2 انواع مختلفی داره که معروف ترین اون ها sha256 هستش که نسبت به md5 و sha1 امنیت خیلی بیشتری داره , به جای استفاده از md5 و sha1 , از این نوع الگوریتم استفاده کنید .از نظر سریع بودن , باید بگم که به طور کلی این الگوریتم , ۲۰ درصد از md5  و sha1 کند تره !‌ ولی به نظر من ارزش امنیت رو داره . و این الگوریتم , هش هایی با طول ۲۵۶ بیت تولید میکنه .به طور کلی این چند مدل رمز نگاری خیلی محبوب و ایمن هستن و در حال حاضر خیلی استفاده میشن . ولی شما میتونید دنبال چیز های جدید تر و بهتر برای جایگزین کردن باشید . اگر میخواین نحوه استفاده کردن از این هش فانکشن ها رو یاد بگیرید , میتونید یه سرچ ریز بزنید . معمولا زبان های برنامه نویسی به طور پیشفرض این هش فانکشن ها رو داخل خودشون دارن و نیازی به ایمپورت نیست .نتیجه گیری من متخصص رمز نگاری نیستم و فقط دانسته هام رو به اشتراک گذاشتم . اگر این نوشته مشکلی داشت شما آزاد به انتقاد هستید و میتونید که ایراد کار رو بگیرید . دونستن این مدل از اطلاعات خیلی میتونه به برنامه نویس ها کمک کنه و من هم میخواستم با انتشار دادن این مطلب , کمکی به برنامه نویس ها کرده باشم.سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Sun, 13 Feb 2022 15:15:28 +0330</pubDate></item><item><title>معرفی بلیتز جی اس ( Blitz.js )</title><link>https://virgool.ir/@aliakbar.zohour/معرفی-بلیتز-جی-اس-blitzjs-c2qraetolovo</link><description>با افتخار اولین کسی هستم که در وب فارسی , مطلبی درباره بلیتز جی اس منتشر میکنم و قطعا به عنوان اولین مطلب در این زمینه , نکات خوب و کاربردی رو خواهم گفت و اگر برنامه نویس هستید , مخصوصا برنامه نویس وب , این مطلب برای شما و آینده شما مناسبه .قراره درباره چی صحبت کنیم ؟توی پادکست آینده برنامه نویسی وب من فریم ورک ها و کتابخانه هایی رو معرفی کردم و به شما گفتم که اینها آینده وب هستند و برنامه نویس ها در آینده به این فریم ورک ها و کتابخانه ها نیاز پیدا خواهند کرد . قراره درباره یک فریم ورک قدرتمند و رو به رشد جاوااسکریپتی صحبت کنیم که به نظر من خیلی میتونه به شما کمک کنه . توی این مطلب من نمیخوام خیلی ریز و دقیق این فریم ورک رو معرفی کنم و میخوام صرفا یه معرفی انجام بدم و شما رو به سمت یادگیری این فریم ورک سوق بدم .بلیتز جی اس ( Blitz.js ) چیست ؟بلیتز جی اس یک mmf ( متا متا فریم ورک ) هستش که به شما این اجازه رو میده در حالت فول استک , وب اپلیکیشن های خودتون رو دولوپ کنید ( توسعه بدید ) . این یعنی چی ؟  یعنی اینکه شما دیگه نیازی به دیتابیس خارجی و API ندارید و تمامی کار هارو توی یک بخش انجام میدید !!!‌ یعنی اینکه شما در حین کد نویسی فقط دیتا بیس رو ایمپورت میکنید و ازش استفاده میکنید . بدون API . و واقعا یکی از شعار های این فریم ورک هم همینه که میگه ما بدون ای پی آی ( Zero-API ) هستیم .بلیتز جی اس بر پایه نکست جی اس ( Next.js ) و برای ری اکت جی اس ساخته شده . و زمانی که شما بر روی وب سایت این فریم ورک , لیندینگ میکنید , تیتر وب سایت هست ( The Fullstack React Framework ) و جالبی داستان هم همینجاست , اگر شما به ری اکت و سینتکس ری اکت مسلط باشید , عملا میتونید با این فریم ورک به راحتی کار کنید و لذتشو ببرید . صفحه ورود وب سایت این فریم ورکاین فریم ورک تنها مزیتی که نسبت به بقیه فریم ورک ها داره , همین فول استک دولوپینگ هست که به شما اجازه میده تمام کار های فرانت اند و بک اند رو , توی فضای کلاینت ساید کد نویسی کنید . امکانات آماده ای رو مثل ( routing, file structure, and authentication ) به شما ارائه میده که این خیلی خیلی کار شما رو راحت میکنه .این فریم ورک به صورت متن باز ( Open Source ) توی گیت هاب قرار گرفته و شما میتونید به پیشرفت اون کمک کنید و یا اون رو بیشتر مطالعه کنید . این فریم ورک به اندازه ری اکت و انگولار امنیت داره , پس نگران امنیت وب اپلیکیشن ها نباشید .از کجا شروع به یادگیری کنم ؟قطعا بهترین منبع برای یادگیری این فریم ورک , وب سایت و گیت هاب این فریم ورک هستن . البته اگر انگلیسی قوی دارید , میتونید به یوتیوب هم یه سری بزنید . نتیجه گیریمن خوشحالم که به عنوان اولین نفر توی وب فارسی تونستم این مطلب رو بنویسم و در دسترس عموم قرار بدم و امیدوارم که برای برنامه نویس های وب مفید باشه و بتونه تحولی رو توی این حوزه ایجاد کنه .قرار نبود که این مطلب کامل باشه و فقط قرار هست که شما رو به سمت یادگیری این فریم ورک خفن سوق بده و کمک کنه به آشنا شدن شما با این فریم ورک . حتما نظراتتون رو برام کامنت کنید و اگر نقصی در این مطلب بود حتما بهم بگید و به بهتر شدن مطالبم کمک کنید .اگر شما از این فریم ورک اطلاع بیشتری دارید , توی کامنت ها به من اطلاع بدید ...منابع وب سایت Blitz.js : لینک ورود لینک گیت هاب : Blitz.js سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Mon, 07 Feb 2022 01:43:04 +0330</pubDate></item><item><title>فرق ری اکت و انگولار چیه ؟</title><link>https://virgool.ir/@aliakbar.zohour/فرق-ری-اکت-و-انگولار-چیه-we63ylu70rh9</link><description>توی این مطلب میخوام جواب یکی از سوال های مصاحبه ای خودم رو خیلی خلاصه و مفید بنویسم . اگر برنامه نویس وب هستید , این مطلب برای شما مناسبه ( ممکنه توی مصاحبه کاری نجاتتون بده )چرا این مطلب رو نوشتم ؟داستان از جایی شروع شد که من برای یک مصاحبه کاری به عنوان Front_End Developer ( Angular ) داخل شرکت حاضر شدم و مصاحبه شروع شد ...جالب ترین سوالی که از من به عنوان برنامه نویس وب پرسیده شد , این بود که فرق ری اکت جی اس و انگولار جی اس چیه ؟ حواستون باشه , این یه تله هست که توی همون قدم اول بفهمن واقعا شما اینکاره هستید یا نه . قبل از اینکه جواب بدید باید این رو بگید که ( انگولار یا انگولار جی اس ؟ ) و در ادامه بگید که دیگه انگولار جی اس وجود نداره و خیلی وقته که برنامه نویس ها دارن از نسخه انگولار استفاده میکنن ( انگولار 1,2,3, . . . , 12 ,13 ).من بعد از اینکه این جواب رو دادم , خیلی جواب رو پیچوندم و وسط توضیحاتم, عملا یکسری توضیحات اضافه دادم که اصلا برای کار فرما اهمیت نداشت و فقط به یک تیکه جواب اصلی من توجه کرده بودن ! اون جواب چی بود که باعث موفقیت من توی این مصاحبه شد ؟ توی چند خط به صورت خیلی خیلی جمع و جور توضیح میدم و امیدوارم که به یاد شما بمونه :ری اکت یه کتابخانه هستش , ولی انگولار یک چهارچوب ( Framework ) هست با ابزار هایی تمام عیار .یکی از بزرگ ترین تفاوت این دو فریم ورک , نوع دام ( DOM ) اون هاست , به این صورت که دام مجازی ری اکت , یک طرفه هست و دام واقعی انگولار دوطرفه . ( منظور از یکطرفه و دوطرفه , نوع ارتباط داده ها هست )و در بخش سرعت , در بعضی از موارد , ری اکت سریع تر هست .و تمام . این چهار خط تمام چیزی هست که شما در جواب این سوال باید بگید .  این سوال معمولا خیلی پرسیده میشه و من خوشحالم که تونستم یه مطلب کاربردی برای این سوال تولید کنم .نتیجه گیری این تمام چیزی بود که من دوست داشتم از تجربه خودم به اشتراک بزارم و امیدوارم تونسته باشم که خیلی کاربردی گفته باشم . اگر در این نوشته ضعفی وجود داشت حتما بهم بگید و برعکس اگر نقطه قوتی وجود داره , خوشحال میشم که بهم بگید .سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Fri, 04 Feb 2022 01:56:12 +0330</pubDate></item><item><title>جای خالیه انگولار ...</title><link>https://virgool.ir/@aliakbar.zohour/جای-خالیه-انگولار-khxfab4act4p</link><description>خیلی وقته که دیگه کسی درباره انگولار صحبت نمیکنه و حتی به خودش زحمت نمیده که درباره این موضوع فکر کنه . امروز می خوام درباره انگولار یا همون انگولار جی اس و جای خالیش توی ایران صحبت کنم .  این پست برای هر کسی که برنامه نویس هست مخصوصاً برنامه نویس وب مناسب هستش …قضیه چیه ؟تقریباً سه سالی میشه که کسی درباره این موضوع صحبت نکرده و کسانی که توی اینستاگرام , یوتیوب ,  آپارات و جاهای دیگه فعالیت می کنند این باور رو توی برنامه نویس های وب ایجاد کردند که انگولار جی اس بدرد نمیخوره و سعی کردند که کاربران رو به سمت دوره های اموزشی خودشون سوق بدن که اکثراً دوره های آموزشی ری اکت و ویو جی اس بودند و کسی حتی به خودش زحمت نمی داد که این فریمورک بسیار بسیار بسیار قدرتمند رو یاد بگیره و یاد بده .و منی که تازه شروع به کار کرده بودم و نیاز داشتم انگولار جی اس رو یاد بگیرم هیچ کسی رو پیدا نکردم که این آموزش ها رو در اختیار من قرار بده و به همین دلیل من کارم نزدیک به دو ماه عقب افتاد .  نباید نامردی کنم و  اینو باید بگم که دوره خوب پیدا کردم ولی اون دوره خوب , برای سه سال پیش بود و کسی که در دنیای مهندسی نرم افزار و برنامه نویسی , اطلاعاتش رو از سه سال پیش داشته باشه عملاً یک برنامه‌نویس مرده ست …چرا این مطلب رو نوشتم ؟من به عنوان یک برنامه نویس , این شکاف رو در بازار ایران دیدم که همه برنامه نویس ها به سمت ری‌اکت یا ویو جی اس رفتن و با توجه به اوضاع , کسی که انگولار جی اس رو یاد بگیره یک برنده واقعیه چون همونطور که گفتم شرکت‌ها دارن رو میارن به برنامه نویسی که به انگولار مسلط باشه و واقعاً پول زیادی خرج می‌کنند .معمولاً به خاطر سختی یادگیری انگولار جی اس هست که اون رو یاد نمی گیرن و شاید به همین دلیل هست که همین عزیزانی که توی یوتیوب , آپارات و جاهای دیگه فعالیت می کنند برنامه نویس ها رو سوق می‌دهند به سمت کتابخانه‌ها و فریمورک های راحت تری مثل ری اکت جی اس و ویو جی اس ولی این رو باید در نظر گرفت که انگولار جی اس شاید سخت باشه ولی به معنای واقعی کلمه کامله .شما در فریم ورک ری اکت جی اس  دقیقاً مثل پایتون , قدرت رو در استفاده از کتابخانه ها و کامپوننت های دیگه می بینید و یادم میاد کسی رو دیدم که به من می‌گفت ری اکت به این دلیل خوبه که اول از همه یادگیریش آسونه و بعد اینکه کامپوننت ها کتابخانه ها و امکانات گسترده‌ای داره که ما می‌توانیم به راحتی از این امکانات استفاده کنیم , ولی انگولار جی اس این امکان رو نداره ... اگر شمایی که دارید این متن رو میخونین انسان با سوادی در این زمینه باشید متوجه میشید که این شخص سواد کافی برای نصیحت کردن من رو نداشت .باید بگم که انگولار جی اس همونطور که گفتم به معنای واقعی کلمه , کامله و دیگه نیازی نداره که شما از فریم ورک کتابخانه و کامپوننت های جدا استفاده کنید ( البته به صورت دیفالت ) ,  انگولار برخلاف بقیه فریم ورک ها و کتابخانه‌هایی که معروف شده , چهارچوب خاصی برای نوشتن داره و همین هم باعث میشه که وب اپلیکیشن هایی که شما می نویسید , خیلی خیلی منظم و درست باشند و اگر دوست داشته  باشید میتونم در آینده دوره آموزشی رو تحت عنوان دوره جامع انگولار جی اس تولید کنم و به صورت رایگان اون رو عرضه کنم , البته اگر یه همچین چیزی رو دوست داشتید تو بخش کامنت ها به من بگید…نتجه گیری ...نتیجه این نوشته این میشه که گول سوشال مدیا ها را نخورید ,  با  توجه به بازاری که در آن هستید با عقل کامل تصمیم گیری کنید , مهم نیست که کسی میگه انگولار قویه یا یادگیریش ضعیفه, معمولاً بازار کار , برنامه نویس ها رو حرکت میده به سمتی که شاید اون مسیر رو دوست نداشته باشند , ولی در تاریخ ۶ بهمن ۱۴۰۰ ایران , بازار برنامه نویسی ایران به شدت خلع برنامه نویس مسلط به انگولار جی اس رو احساس می کنه و عملاً کسی که به این فریم ورک بسیار قوی مسلط باشه,  یک رزومه بسیار قوی داره و این امر باعث میشه که برنامه نویس های انگولاراحساس غربت در کامیونیتی رو بکنن . ولی باید این موضوع رو دید که یک برنامه نویس وب مسلط به انگولار جی اس یک فرد بسیار نایاب در ایران هست و میتونه یک کار بسیار خوب و با یک حقوق خوب رو داشته باشه . شاید این نوشته من به برنامه نویس های انگولار صدمه بزنه ولی من نظرم اینه که این کار اشتباهه که همه رو به سمت ری اکت و یا ویو جی اس سوق بدیم و بقیه فریم ورک ها و موقعیت ها رو نادیده بگیریم . این نوشته یک دلنوشته بود و یا خیلی ها میتونن بهش بگن این یک غرغر بود ولی این نظر من بود که نوشتم و دوست دارم که شما هم نظراتتون رو پایین این مطلب برام بنویسید و به من بگید که آیا دارم درست میگم یا من کاملاً در اشتباه هستم .سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Fri, 28 Jan 2022 01:41:30 +0330</pubDate></item><item><title>ترس کارفرما</title><link>https://virgool.ir/applymag/ترس-کارفرما-sjdqgdvllvjk</link><description>امروز میخوام درباره یه تجربه صحبت کنم که برای من مشخص کرد که بعضی از کارفرما ها از استخدام برنامه نویس ها میترسن ! اگر برنامه نویس و جویای کار هستید این مطلب برای شما مناسبه .داستان از جایی شروع شد که من دنبال شغل در سایت های مختلف بودم و به یه آگهی برخوردم که واقعا باعث شد تا چشمام برق برنه ! عنوان آگهی استخدام ( Front end Developer ) بود و در بخش توضیحات نوشته بود که ما نیاز به یک برنامه نویس فرانت اند میدلول هستیم و استک هایی رو که نیاز داشتن نوشته بود و گفته بود که حتما اگر این شرایط رو دارید برای ما رزومه ارسال کنید .من تمام استک هایی رو که گفته بودن داشتم و خیلی هم باحاشون کار کرده بودم , پس اعتماد بنفسم زیاد شد و بعد از خوندن استک ها به بخش حقوق و مکان شرکت رفتم و با دیدن قیمت , واقعا تعجب کردم و باعت شد تا سریع تر رزومه خودم رو ارسال کنم . باید بگم که برای یک برنامه نویس میدلول حقوق بالایی بود .من برای این شغل اپلای کردم و واقعا مطمئن بودم که قبول میشم چون رزومه ای که داشتم واقعا برای اون موقعیت شغلی کامل بود . سه روز گذشت و بعد از سه روز جواب این اپلای اومد و من واقعا خوشحال شدم, چون خیلی مطمئن بودم که من برای این شغل عالی هستم و حتما من رو انتخاب میکنن , ولی جواب ایمیل یه چیز دیگه بود , من رو رد کردن !!! درسته , برای شغلی که واقعا براش عالی بودم , رد شدم . احتمالا الان برای شما سوال پیش اومده که دلیل رد کردن من چی بوده ؟ داستان دقیقا از اینجا شروع میشه که من رو بخاطر ( بالا تر بودن از حد انتظار | over qualify  ) رد کردن !!! جریان چیه ؟تا اینجا شما داستان رو فهمیدید و حالا میشه درباره دلیل این ری اکشن عجیب کارفرما صحبت کرد .کارفرما به این دلیل من رو رد کرد که احساس کرد من برای این کار خیلی خوبم ! ( الان با خودتون نگید که این بشر چقدر خود شیفتس ) . شاید به خودتون بگید که مگه میشه کارفرما یه همچین فرصتی رو از دست بده ؟ باید بگم که بله , همیشه این که همه چی خوب پیش بره برای آدم ترسناکه ! چون ممکنه از پس این خوبی , چند تا دردسر در بیاد که لذت اون چیز خوب رو از شما بگیره .کارفرما هم دقیقا این احساس رو کرد . احساس کرد که اگر من این برنامه نویس رو استخدام کنم , ممکنه بعدا از من حقوق بیشتر بخواد و من پول بیشتری نمیخوام بدم . این احساسیه که دقیقا بعد از دیدن رزومه خیلی خوب به کارفرما دست میده . ولی یکسری کارفرما ها دنبال همین هستن , میخوان که همه چی خوب و عالی پیش بره و براشون پرداخت پول خیلی اهمیت نداره .ولی بقیه کارفرما ها مثل همین کارفرمای عزیز , در لحظه این استرس رو میگیره که &#39; وای این آدم خیلی خوبه , نکنه بعدا بابت اینکه خیلی خوبه از من پول بیشتر بخواد ... &#39; .توی این شرایط , کارفرمایی که رزومه من رو دیده , پول رو به کیفیت ترجیح داده و نخواسته که ریسک از دست دادن پول بیشتر رو بپذیره .چاره چیه ؟ببینید این چیز خوبیه که شما برای کاری که دوست دارید عالی باشید , ولی نباید طوری باشه که کارفرمای شما بترسه , من احساس میکنم بخاطر رزومه , نمونه کار ها , و چیز های دیگه این اتفاق افتاد و من واقعا ناراحت نیستم . این به نظر من مشکل نیست که چاره داشته باشه .ولی شما میتونید که با توجه به سطح مهارتتون اپلای کنید , نه موقعیت هایی که شما برای اون ها خیلی خوبید .نتیجه گیری این مطلب برای این نبود که از که بگم من خیلی برنامه نویس خفنیم , نه , واقعا نه , من برای اون موقعیت شغلی خیلی خوب بودم ولی توی کار خودم هنوز جا دارم . هدف این مطلب این بود که به شما بگم یه همچین کارفرما هایی وجود دارن . این مطلب یه اشتراک تجربه بود و برای من جالب بود که این تجربه رو به اشتراک بزارم  حتما نظراتتون رو برام کامنت کنید و نظرتون رو درباره این اتفاق بهم بگید ...سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Sun, 16 Jan 2022 00:09:05 +0330</pubDate></item><item><title>ترفند طراحی وب سایت واکنشگرا !</title><link>https://virgool.ir/@aliakbar.zohour/ترفند-طراحی-وب-سایت-واکنشگرا-mn1asr7mkgej</link><description>توی این ویدئو یه ترفند خیلی باحال رو میگم تا بدون استفاده از فریم ورک و مدیا کوئری , وب سایتتون رو ریسپانسیو کنید !وقتی بفهمید که این ترفند چیه قطعا خندتون میگیره و قول میدم که توی ذهنتون میمونه . خیلی توضیح نمیدم چون براش ویدئو ظبط کردم ! میتونید این ویدئو رو توی کانال یوتیوب و آپارات نگاه کنید و اگر دوست داشتید ویدئو ها رو لایک کنید و من رو سابسکرایب کنید . حتما نظراتتون رو برام بنویسید و پیشنهاد هاتون رو برام بفرستید ...لینک ویدئو در یوتیوب ===== &gt; راحت ریسپانسیو کن !لینک ویدئو در آپارات ===== &gt; راحت ریسپانسیو کن !سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Tue, 11 Jan 2022 01:53:04 +0330</pubDate></item><item><title>پیاده سازی منو ریسپانسیو با بوتسترپ !</title><link>https://virgool.ir/@aliakbar.zohour/پیاده-سازی-منو-ریسپانسیو-با-بوتسترپ-fiqg4yfhcrys</link><description>به عنوان تفریح از روی نوشته یکی از دوستان توی وب سایت ویرگول , پروژه ای رو که معرفی کرده بود پیاده سازی کردم و خیلی هم خوشگل دراومد . اگر دنبال مینی پروژه فان هستید این ویدئو برای شما خیلی مناسبه .بقیه توضیحات رو توی ویدئو دادم و میتونید به طور کامل ویدئو رو توی آپارات و یوتیوب ببینید ...حتما نظراتتون رو برام بنویسید و پیشنهاداتتون رو برام بفرستید ...لینک ویدئو در یوتیوب ===== &gt; پیاده سازی منو ریسپانسیو با بوتسترپ لینک ویدئو در آپارات ===== &gt; پیاده سازی منو ریسپانسیو با بوتسترپ سالم و سلامت باشید . . .</description><category>علی اکبر ظهور</category><author>علی اکبر ظهور</author><pubDate>Tue, 11 Jan 2022 01:45:22 +0330</pubDate></item></channel></rss>