نرمالسازی (Normalization) پایگاه داده
نرمالسازی پایگاه داده (normalization) به فرآیندی گفته میشود که توسط آن پایگاه داده در قالب جدول و ستون مرتب میشود. سه مرحله نرمالسازی در پایگاه دادهها وجود دارد:
اولین فرم طبیعی، دومین فرم طبیعی و سومین فرم طبیعی
ایده کلی نرمالسازی اینست که هر جدول فقط دادههایی در رابطه با موضوع خاصی را ذخیره کند. سه دلیل اصلی برای نرمالسازی پایگاه داده وجود دارد:
کاهش تکرار داده در پایگاه داده
حذف یا کاهش شانس بروز data anomaly
کاهش پیچیدگی کوئریها، مخصوصا جستجوها
📃 در این مقاله به سراغ بررسی قوانین نرمالسازی پایگاه داده میرویم و از سه مرحلهای که گفته شد، عبور خواهیم کرد:
👉 https://www.roxo.ir/database-normalization
💻 #برنامه_نویسی #پایگاه_داده
🆔 @roxo_ir
نرمالسازی پایگاه داده (normalization) به فرآیندی گفته میشود که توسط آن پایگاه داده در قالب جدول و ستون مرتب میشود. سه مرحله نرمالسازی در پایگاه دادهها وجود دارد:
اولین فرم طبیعی، دومین فرم طبیعی و سومین فرم طبیعی
ایده کلی نرمالسازی اینست که هر جدول فقط دادههایی در رابطه با موضوع خاصی را ذخیره کند. سه دلیل اصلی برای نرمالسازی پایگاه داده وجود دارد:
کاهش تکرار داده در پایگاه داده
حذف یا کاهش شانس بروز data anomaly
کاهش پیچیدگی کوئریها، مخصوصا جستجوها
📃 در این مقاله به سراغ بررسی قوانین نرمالسازی پایگاه داده میرویم و از سه مرحلهای که گفته شد، عبور خواهیم کرد:
👉 https://www.roxo.ir/database-normalization
💻 #برنامه_نویسی #پایگاه_داده
🆔 @roxo_ir
نصب Phalcon، سریعترین فریمورک PHP، روی سرور لینوکسی
💠 فالکون یکی از فریمورکهای کمتر شناختهشده اما در عین حال یکی از قدرتمندترین فریمورکهای php است. این فریمورک در حال حاضر بیش از ۱۰ هزار ستاره در گیتهاب دارد و از سال ۲۰۱۲ به صورت متن باز ارائه شده است.
💠 نکته جالب در رابطه با این فریمورک اینست که با زبانهای C و Zephir و به صورت یک extension برای زبان PHP ساخته شده است. این موضوع باعث سرعت باورنکردنی این فریمورک شد اما در عین حال یکی از دلایل ناآشنا بودنش نیز میباشد.
💠 برای استفاده از این فریمورک باید از شرکت هاستینگ بخواهید که phalcon را برایتان فعال کند یا اینکه یک VPS خریداری کرده و خودتان آن را فعال کنید. همچنین دیباگ کردن برنامههای phalcon سختتر است چرا که به زبان C نوشته شده است و علاوه بر آن فعالسازی و نصب آن نیز تقریبا کار دشواری است. تمام این موارد باعث محبوبیت کمتر فالکون شدهاند اما اگر سختیهای ابتدایی کار را بپذیرید فریمورکی با سرعتی باورنکردنی خواهید داشت.
📃مراحل نصب فالکون روی سرور لینوکسی:
👉 https://www.roxo.ir/installation-of-phalcon-on-a-linux-server
🆔 @roxo_ir
💠 فالکون یکی از فریمورکهای کمتر شناختهشده اما در عین حال یکی از قدرتمندترین فریمورکهای php است. این فریمورک در حال حاضر بیش از ۱۰ هزار ستاره در گیتهاب دارد و از سال ۲۰۱۲ به صورت متن باز ارائه شده است.
💠 نکته جالب در رابطه با این فریمورک اینست که با زبانهای C و Zephir و به صورت یک extension برای زبان PHP ساخته شده است. این موضوع باعث سرعت باورنکردنی این فریمورک شد اما در عین حال یکی از دلایل ناآشنا بودنش نیز میباشد.
💠 برای استفاده از این فریمورک باید از شرکت هاستینگ بخواهید که phalcon را برایتان فعال کند یا اینکه یک VPS خریداری کرده و خودتان آن را فعال کنید. همچنین دیباگ کردن برنامههای phalcon سختتر است چرا که به زبان C نوشته شده است و علاوه بر آن فعالسازی و نصب آن نیز تقریبا کار دشواری است. تمام این موارد باعث محبوبیت کمتر فالکون شدهاند اما اگر سختیهای ابتدایی کار را بپذیرید فریمورکی با سرعتی باورنکردنی خواهید داشت.
📃مراحل نصب فالکون روی سرور لینوکسی:
👉 https://www.roxo.ir/installation-of-phalcon-on-a-linux-server
🆔 @roxo_ir
بدافزار (malware) مخفف عبارت نرمافزارهای مخرب (malicious software) است که یک اصطلاح کلی برای برنامه.ها و پروندههای مضر برای سایت میباشد که میتواند یک سیستم را به خطر بیندازد. این موضوع میتواند به رایانهها، سرورها، شبکهها و وبسایتها آسیب برساند.
در زیر به برخی از خطرات بدافزارها برای سایت اشاره میکنیم:
🔻بدافزارها باعث تغییرات ناخواسته در محتوا یا سایت شما شده و چیزهایی را بدون اجازه شما به سایت اضافه یا از آن کم میکنند.
🔻دادههای حساس مثل اطلاعات شخصی شما و کاربران را به خطر میاندازند
🔻هرزنامهها یا اسپمها را بصورت ایمیل یا لینک در سایت شما قرار میدهند
🔻هدایت نشانی اینترنتیِ سایت شما به سوی وبسایتهای غیرقابل اعتماد، کلاهبرداری، پخش محتوای نامناسب یا تبلیغات
🔻افزایش ناگهانی در مصرف منابع سرور که باعث میشود گوگل سایت شما را بعنوان یک سایت ناامن در مرورگر و نتایج جستجوی خود علامتگذاری کند
🔻تأثیر منفی بر سئوی سایت
📃 در این مقاله، نحوه حذف نرمافزارهای مخرب از یک سایت وردپرس را یاد خواهید گرفت:
👉 https://www.roxo.ir/remove-malware-from-wordpress-site
💻 #برنامه_نویسی #وردپرس
🆔 @roxo_ir
در زیر به برخی از خطرات بدافزارها برای سایت اشاره میکنیم:
🔻بدافزارها باعث تغییرات ناخواسته در محتوا یا سایت شما شده و چیزهایی را بدون اجازه شما به سایت اضافه یا از آن کم میکنند.
🔻دادههای حساس مثل اطلاعات شخصی شما و کاربران را به خطر میاندازند
🔻هرزنامهها یا اسپمها را بصورت ایمیل یا لینک در سایت شما قرار میدهند
🔻هدایت نشانی اینترنتیِ سایت شما به سوی وبسایتهای غیرقابل اعتماد، کلاهبرداری، پخش محتوای نامناسب یا تبلیغات
🔻افزایش ناگهانی در مصرف منابع سرور که باعث میشود گوگل سایت شما را بعنوان یک سایت ناامن در مرورگر و نتایج جستجوی خود علامتگذاری کند
🔻تأثیر منفی بر سئوی سایت
📃 در این مقاله، نحوه حذف نرمافزارهای مخرب از یک سایت وردپرس را یاد خواهید گرفت:
👉 https://www.roxo.ir/remove-malware-from-wordpress-site
💻 #برنامه_نویسی #وردپرس
🆔 @roxo_ir
🧩 اولین درسهای سری آموزش رایگان بازیسازی با پایتون در سایت منتشر شد.
👉 https://www.roxo.ir/series/making-games-with-python-pygame
💻 #پایتون #بازی_سازی
🆔 @roxo_ir
👉 https://www.roxo.ir/series/making-games-with-python-pygame
💻 #پایتون #بازی_سازی
🆔 @roxo_ir
👁🗨 ساخت سیستم فراموشی رمزعبور با PHP و MySQL
در این آموزش قرار است یک صفحه ورود کاربران ایجاد کنیم. در این صفحه یک گزینه فراموشی رمز عبور وجود دارد، کاربری که قصد بازیابی رمز عبور خود را دارد، با وارد کردن ایمیل خود یک لینک بازیابی رمز عبور به ایمیل او ارسال می شود تا رمز عبور خود را تغییر دهد.
👉 https://www.roxo.ir/forgot-password-recovery-using-php-and-mysql
💻 #php #mysql
🆔 @roxo_ir
در این آموزش قرار است یک صفحه ورود کاربران ایجاد کنیم. در این صفحه یک گزینه فراموشی رمز عبور وجود دارد، کاربری که قصد بازیابی رمز عبور خود را دارد، با وارد کردن ایمیل خود یک لینک بازیابی رمز عبور به ایمیل او ارسال می شود تا رمز عبور خود را تغییر دهد.
👉 https://www.roxo.ir/forgot-password-recovery-using-php-and-mysql
💻 #php #mysql
🆔 @roxo_ir
📢 دانلود تلگرام در پلیاستور از مرز یک میلیارد گذشت!
به گزارش Phonearena، پیامرسان تلگرام توانست از مرز یک میلیارد دانلود در پلیاستور گوگل بگذرد. یکی از دلایل احتمالی این افزایش تعداد دانلود، از دسترس خارج شدن فیسبوک و دیگر اپلیکیشنهای آن نظیر واتساپ و فیسبوک مسنجر و اینستاگرام در دو هفته گذشته است.
🆔 @roxo_ir
به گزارش Phonearena، پیامرسان تلگرام توانست از مرز یک میلیارد دانلود در پلیاستور گوگل بگذرد. یکی از دلایل احتمالی این افزایش تعداد دانلود، از دسترس خارج شدن فیسبوک و دیگر اپلیکیشنهای آن نظیر واتساپ و فیسبوک مسنجر و اینستاگرام در دو هفته گذشته است.
🆔 @roxo_ir
هوکهای react در نسخه 16.8 معرفی شدند و قابلیتهایی را به ما دادند که قبل از آن فقط در کامپوننتهای کلاس محور در دسترس بودند.
هوکها به شما اجازه میدهند کدهای کمتری بنویسید که به نوع خود باعث میشود حجم نهایی کدها کمتر شده و طبیعتاً سرعت برنامه شما افزایش پیدا کند. هر هوک یک تابع ساده است که با کلمه use شروع میشود و یک یا چند داده یا متد را به شما میدهد.
در مقاله زیر با انواع این هوکها آشنا میشوید:
• useRef
• useState
• useReducer
• useEffect
• useCallback
• useMemo
• useContext
پسازاینکه با این هوکها آشنا شدیم نگاهی به نحوه نوشتن هوکهای شخصی نیز میاندازیم.
👉 https://www.roxo.ir/react-hooks-2
💻 #برنامه_نویسی #ری_اکت
🆔 @roxo_ir
هوکها به شما اجازه میدهند کدهای کمتری بنویسید که به نوع خود باعث میشود حجم نهایی کدها کمتر شده و طبیعتاً سرعت برنامه شما افزایش پیدا کند. هر هوک یک تابع ساده است که با کلمه use شروع میشود و یک یا چند داده یا متد را به شما میدهد.
در مقاله زیر با انواع این هوکها آشنا میشوید:
• useRef
• useState
• useReducer
• useEffect
• useCallback
• useMemo
• useContext
پسازاینکه با این هوکها آشنا شدیم نگاهی به نحوه نوشتن هوکهای شخصی نیز میاندازیم.
👉 https://www.roxo.ir/react-hooks-2
💻 #برنامه_نویسی #ری_اکت
🆔 @roxo_ir
نصر (سازمان نظام صنفی رایانهای) تهران در مخالف با اینماد اجباری بیانیه صادر کرد.
نصر تهران در انتشار بیانیهای در مخالفت با اجباری شدن اینماد با بیان اینکه این موضوع خلاف قانون و در راستای تشویق جوانان به مهاجرت است تبدیل اینماد به رگولاتور و نهاد مجوزدهی را خطرآفرین توصیف کرده است.
در این بیانیه با تاکید بر اینکه تجمیع اختیاراتی با این ابعاد همچون احراز صلاحیت کسبوکار، امکان ممانعت از شروع فعالیت اقتصادی، امکان نظارت و حتی تعلیق مجوز صادر شده برخلاف فرمایشات رهبری است، عنوان شده که این روند منجر به تشدید ناامیدی و تلاش جوانان در راستای مهاجرت است.
📍 منبع: دیجیاتو
🆔 @roxo_ir
نصر تهران در انتشار بیانیهای در مخالفت با اجباری شدن اینماد با بیان اینکه این موضوع خلاف قانون و در راستای تشویق جوانان به مهاجرت است تبدیل اینماد به رگولاتور و نهاد مجوزدهی را خطرآفرین توصیف کرده است.
در این بیانیه با تاکید بر اینکه تجمیع اختیاراتی با این ابعاد همچون احراز صلاحیت کسبوکار، امکان ممانعت از شروع فعالیت اقتصادی، امکان نظارت و حتی تعلیق مجوز صادر شده برخلاف فرمایشات رهبری است، عنوان شده که این روند منجر به تشدید ناامیدی و تلاش جوانان در راستای مهاجرت است.
📍 منبع: دیجیاتو
🆔 @roxo_ir
طرح صیانت برگشت خورد؛ ارجاع به مرکز پژوهشهای مجلس برای بررسی مجدد
در آخرین جلسه کمیسیون بررسی تخصصی طرح صیانت نمایندگان مجلس حاضر در این کمیسیون به برگشت طرح صیانت به مرکز پژوهشها رای دادند. آنها همچنین تاکید کردند که نظرات دولت و مرکز ملی فضای مجازی در جلسات بررسی طرح صیانت در مرکز پژوهشها شنیده خواهد شد تا بهترین طرح ممکن در صحن علنی مجلس ارائه شود.
🆔 @roxo_ir
در آخرین جلسه کمیسیون بررسی تخصصی طرح صیانت نمایندگان مجلس حاضر در این کمیسیون به برگشت طرح صیانت به مرکز پژوهشها رای دادند. آنها همچنین تاکید کردند که نظرات دولت و مرکز ملی فضای مجازی در جلسات بررسی طرح صیانت در مرکز پژوهشها شنیده خواهد شد تا بهترین طرح ممکن در صحن علنی مجلس ارائه شود.
🆔 @roxo_ir
نکست جیاس فریمورکی است که از react استفاده میکند و تمام برنامه (سمت سرور و سمت کلاینت) را برایتان میسازد. این فریمورک قابلیتهای بسیار بیشتری را نسبت به react به شما میدهد و درواقع react را توسعه میدهد.
در next.js هنوز هم کد react مینویسیم اما قابلیتهای آن بسیار زیاد و قوی شده است و برای هر مسئله کوچکی نیاز به استفاده از کتابخانههای خارجی نداریم.
مزیت اصلی next.js ارائه قابلیت Server-Side Rendering است که یعنی صفحات شما در سمت سرور ساختهشده و بهصورت کاملشده به سمت کاربر ارسال میشوند درحالیکه در برنامههای عادی و تکصفحهای React دادهها از API دریافت شده و روی مرورگر کاربر توسط جاوا اسکریپت از صفر ساخته میشود و چنین موضوعی SEO شما را از دو جهت خراب میکند:
🔰 در برخی از موارد crawler ها نمیتوانند محتویات صفحه را بخوانند.
🔰 در اکثر موارد زمان اولیه بارگذاری صفحه برای برنامههای SPA بسیار زیاد است.
📃 در این مقاله میخواهیم نحوه استفاده از next.js و دستورات آن را بهصورت کامل و عملی نشان دهیم:
👉 https://www.roxo.ir/nextjs-in-one-article
💻 #برنامه_نویسی
🆔 @roxo_ir
در next.js هنوز هم کد react مینویسیم اما قابلیتهای آن بسیار زیاد و قوی شده است و برای هر مسئله کوچکی نیاز به استفاده از کتابخانههای خارجی نداریم.
مزیت اصلی next.js ارائه قابلیت Server-Side Rendering است که یعنی صفحات شما در سمت سرور ساختهشده و بهصورت کاملشده به سمت کاربر ارسال میشوند درحالیکه در برنامههای عادی و تکصفحهای React دادهها از API دریافت شده و روی مرورگر کاربر توسط جاوا اسکریپت از صفر ساخته میشود و چنین موضوعی SEO شما را از دو جهت خراب میکند:
🔰 در برخی از موارد crawler ها نمیتوانند محتویات صفحه را بخوانند.
🔰 در اکثر موارد زمان اولیه بارگذاری صفحه برای برنامههای SPA بسیار زیاد است.
📃 در این مقاله میخواهیم نحوه استفاده از next.js و دستورات آن را بهصورت کامل و عملی نشان دهیم:
👉 https://www.roxo.ir/nextjs-in-one-article
💻 #برنامه_نویسی
🆔 @roxo_ir
🎯 دارت (Dart) یک زبان general-purpose است که توسط گوگل ساختهشده است.
📍زبانهای general-purpose زبانهایی هستند که بهطور خاص برای کاری خاص طراحی نشدهاند بلکه میتوان با آنها کارهای مختلفی انجام داد و به یک حوزه پایبند نیستند.
📍همچنین Dart یک زبان statically typed است که یعنی تایپ متغیرها و دادهها هنگام نوشتن کد مشخص میشود. مثلاً برای تعریف یک رشته حتماً باید مشخص کنید که داده از نوع رشته است و نمیتوانید بدون تغییر صریح و دستی در کدها داده دیگری را در آن ذخیره کنید. البته اگر بخواهیم دقیقتر بگوییم Dart یک زبان type inferred است که یعنی مشخص کردن تایپ دادهها اجباری نیست.
📃 در این مقاله میخواهیم با زبان Dart آشنا شده و آن را با جاوا اسکریپت (یا بهتر بگویم، تایپ اسکریپت) مقایسه کنیم. شاید تعجب کنید اما Dart شباهتهای زیادی با جاوا اسکریپت و مخصوصا تایپ اسکریپت دارد تا حدی که یادگیری آن برای توسعهدهندگان تایپ اسکریپت مانند آب خوردن است:
👉 https://www.roxo.ir/a-tour-of-the-dart-language
💻 #برنامه_نویسی
🆔 @roxo_ir
📍زبانهای general-purpose زبانهایی هستند که بهطور خاص برای کاری خاص طراحی نشدهاند بلکه میتوان با آنها کارهای مختلفی انجام داد و به یک حوزه پایبند نیستند.
📍همچنین Dart یک زبان statically typed است که یعنی تایپ متغیرها و دادهها هنگام نوشتن کد مشخص میشود. مثلاً برای تعریف یک رشته حتماً باید مشخص کنید که داده از نوع رشته است و نمیتوانید بدون تغییر صریح و دستی در کدها داده دیگری را در آن ذخیره کنید. البته اگر بخواهیم دقیقتر بگوییم Dart یک زبان type inferred است که یعنی مشخص کردن تایپ دادهها اجباری نیست.
📃 در این مقاله میخواهیم با زبان Dart آشنا شده و آن را با جاوا اسکریپت (یا بهتر بگویم، تایپ اسکریپت) مقایسه کنیم. شاید تعجب کنید اما Dart شباهتهای زیادی با جاوا اسکریپت و مخصوصا تایپ اسکریپت دارد تا حدی که یادگیری آن برای توسعهدهندگان تایپ اسکریپت مانند آب خوردن است:
👉 https://www.roxo.ir/a-tour-of-the-dart-language
💻 #برنامه_نویسی
🆔 @roxo_ir
راهنمای جامع مدیریت Processها در لینوکس
برنامهها در تمام سیستمعاملها در قالب پروسه یا process اجرا میشوند. درواقع اجرای یک برنامه در سیستمعامل یک پروسه یا process نامیده میشود.
زمانی که سیستمعامل لینوکس در حال بالا آمدن روی سیستم شماست init system اتفاقی میافتد. یعنی ابتدا کرنل لینوکس بارگذاری شده و سپس کامپوننت هایی بارگذاری میشوند که سیستم به آنها نیاز خواهد داشت.
📌 دو نوع پروسه در لینوکس وجود دارد:
👆پروسههای پسزمینه
✌️پروسههای پیشزمینه
در لینوکس نرمافزارهای مختلفی برای مدیریت process ها وجود دارد. هر distribution از سیستمعامل لینوکس (مثلاً Ubuntu و Arch و...) از یک یا چند عدد از این نرمافزارها استفاده میکند اما یادگیری تمام آنها فقط هدر دادن وقت شما است. بهتر است نحوه کار با یکی از این برنامهها را یاد بگیرید و همیشه از همان برنامه استفاده کنید.
📃 در این مقاله درباره دو تا از مشهورترین برنامههای مدیریت پروسه در لینوکس صحبت خواهیم کرد:
👉 https://www.roxo.ir/comprehensive-guide-to-process-management-in-linux
💻 #برنامه_نویسی #لینوکس
🆔 @roxo_ir
برنامهها در تمام سیستمعاملها در قالب پروسه یا process اجرا میشوند. درواقع اجرای یک برنامه در سیستمعامل یک پروسه یا process نامیده میشود.
زمانی که سیستمعامل لینوکس در حال بالا آمدن روی سیستم شماست init system اتفاقی میافتد. یعنی ابتدا کرنل لینوکس بارگذاری شده و سپس کامپوننت هایی بارگذاری میشوند که سیستم به آنها نیاز خواهد داشت.
📌 دو نوع پروسه در لینوکس وجود دارد:
👆پروسههای پسزمینه
✌️پروسههای پیشزمینه
در لینوکس نرمافزارهای مختلفی برای مدیریت process ها وجود دارد. هر distribution از سیستمعامل لینوکس (مثلاً Ubuntu و Arch و...) از یک یا چند عدد از این نرمافزارها استفاده میکند اما یادگیری تمام آنها فقط هدر دادن وقت شما است. بهتر است نحوه کار با یکی از این برنامهها را یاد بگیرید و همیشه از همان برنامه استفاده کنید.
📃 در این مقاله درباره دو تا از مشهورترین برنامههای مدیریت پروسه در لینوکس صحبت خواهیم کرد:
👉 https://www.roxo.ir/comprehensive-guide-to-process-management-in-linux
💻 #برنامه_نویسی #لینوکس
🆔 @roxo_ir
👁🗨 کدام پیامرسانها اطلاعات خود را در اختیار FBI قرار میدهند؟
بهترین پیامرسانهای موجود در بازار ادعای حفظ امنیت و حریم خصوصی کاربران را دارند. اما اکنون گزارشاتی منتشر شده که نشان میدهد برخی از این پیامرسانها اطلاعات خود را در اختیار FBI قرار میدهند.
طبق سندی که تازه منتشر شده سه پیامرسان واتساپ، آیمسیج و لاین برخی اطلاعات مربوط به کاربران را طبق درخواست در اختیار FBI قرار میدهد. اما برخی پیامرسانها مانند تلگرام، سیگنال، وایبر و ویچت تاکنون هیچ محتوایی از دادههای کاربران را به FBI ندادهاند.
📍 منبع: Techna
🆔 @roxo_ir
بهترین پیامرسانهای موجود در بازار ادعای حفظ امنیت و حریم خصوصی کاربران را دارند. اما اکنون گزارشاتی منتشر شده که نشان میدهد برخی از این پیامرسانها اطلاعات خود را در اختیار FBI قرار میدهند.
طبق سندی که تازه منتشر شده سه پیامرسان واتساپ، آیمسیج و لاین برخی اطلاعات مربوط به کاربران را طبق درخواست در اختیار FBI قرار میدهد. اما برخی پیامرسانها مانند تلگرام، سیگنال، وایبر و ویچت تاکنون هیچ محتوایی از دادههای کاربران را به FBI ندادهاند.
📍 منبع: Techna
🆔 @roxo_ir
تشخیص فعال بودن Adblock در مرورگر
ابزارهای adblock به دستهای از افزونهها برای مرورگرهای مختلف گفته میشود که توسط کاربران و برای مسدود کردن تبلیغات سایت شما استفاده میشود. طبیعتا اگر شما بهعنوان وبمستر تبلیغات را با اندازه مناسب و در صفحات مناسب قرار ندهید، به تجربه کاربری سایت خود ضربه میزنید. از طرفی بسیاری از وبمستران سایت خود را با تبلیغات بیشازحد شلوغ میکنند تا جایی که باعث آزار و اذیت کاربران میشوند.
این مسئله باعث شد عدهای از برنامهنویسان وب به فکر توسعه افزونههایی به نام ad blocker شوند که امروزه با نام رایج adblock شناخته میشوند. متأسفانه روی دیگر سکه این است که مسدود کردن تبلیغات روی یک سایت باعث ضربه زدن به درآمد مدیران آن سایت میشود.
هیچ راهحل صددرصدی برای تشخیص تبلیغات نیست و افزونههای adblock نیز نمیتوانند صددرصد تبلیغات را مسدود کنند. به همین شکل، ما نیز نمیتوانیم وجود تمام افزونههای adblock را تشخیص بدهیم اما روشهایی وجود دارد که با استفاده از آنها اکثر این افزونهها قابلتشخیص هستند:
👉 https://roxo.ir/go/dwthg
🆔 @roxo_ir
ابزارهای adblock به دستهای از افزونهها برای مرورگرهای مختلف گفته میشود که توسط کاربران و برای مسدود کردن تبلیغات سایت شما استفاده میشود. طبیعتا اگر شما بهعنوان وبمستر تبلیغات را با اندازه مناسب و در صفحات مناسب قرار ندهید، به تجربه کاربری سایت خود ضربه میزنید. از طرفی بسیاری از وبمستران سایت خود را با تبلیغات بیشازحد شلوغ میکنند تا جایی که باعث آزار و اذیت کاربران میشوند.
این مسئله باعث شد عدهای از برنامهنویسان وب به فکر توسعه افزونههایی به نام ad blocker شوند که امروزه با نام رایج adblock شناخته میشوند. متأسفانه روی دیگر سکه این است که مسدود کردن تبلیغات روی یک سایت باعث ضربه زدن به درآمد مدیران آن سایت میشود.
هیچ راهحل صددرصدی برای تشخیص تبلیغات نیست و افزونههای adblock نیز نمیتوانند صددرصد تبلیغات را مسدود کنند. به همین شکل، ما نیز نمیتوانیم وجود تمام افزونههای adblock را تشخیص بدهیم اما روشهایی وجود دارد که با استفاده از آنها اکثر این افزونهها قابلتشخیص هستند:
👉 https://roxo.ir/go/dwthg
🆔 @roxo_ir
فلکسباکس (Flexbox CSS)، یک مدل طراحی UI است که برای توسعهدهنده قابلیت طراحی ساده ستونها و بلوکها را فراهم میکند.
بهعبارتدیگر با استفاده از فلکسباکس میتوانید بهصورت عمودی (Vertically) یا افقی (Horizontally) ستونها یا ردیفهایی را تولید کرده و در صفحه به نمایش بگذارید.
کلمه Flex مخفف Flexibility یا همان انعطافپذیری است و با استفاده از فلکسباکس میتوان صفحات رسپانسیو (واکنش گرا) بسیار حرفهای تولید کرد.
امروزه تمام مرورگرهای مدرن (بیش از ۹۹ درصد) از قابلیت فلکسباکس پشتیبانی میکنند. از طرفی همه موبایلها نیز از این امکانات برخوردار هستند.
💻 #برنامه_نویسی #css
🆔 @roxo_ir
بهعبارتدیگر با استفاده از فلکسباکس میتوانید بهصورت عمودی (Vertically) یا افقی (Horizontally) ستونها یا ردیفهایی را تولید کرده و در صفحه به نمایش بگذارید.
کلمه Flex مخفف Flexibility یا همان انعطافپذیری است و با استفاده از فلکسباکس میتوان صفحات رسپانسیو (واکنش گرا) بسیار حرفهای تولید کرد.
امروزه تمام مرورگرهای مدرن (بیش از ۹۹ درصد) از قابلیت فلکسباکس پشتیبانی میکنند. از طرفی همه موبایلها نیز از این امکانات برخوردار هستند.
💻 #برنامه_نویسی #css
🆔 @roxo_ir