🧩 اولین درسهای سری آموزش رایگان بازیسازی با پایتون در سایت منتشر شد.
👉 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
Media is too big
VIEW IN TELEGRAM
دوره «آموزش FlexBox در نیم ساعت» منتشر شد.
✅ رایگان
👇👇👇👇
https://www.roxo.ir/course/learn-css-flexbox
🆔 @roxo_ir
✅ رایگان
👇👇👇👇
https://www.roxo.ir/course/learn-css-flexbox
🆔 @roxo_ir
آشنایی با Svelte
همانطور که میدانید دنیای جاوااسکریپت پر از انواع و اقسام فریمورکهای مختلف است که هیچکدام پایانی ندارند. Svelte نسبتاً یکی از تازهکارهای این میدان است. معمولاً ابزارهای جاوااسکریپتی به دلیل تعداد بالای آنها در حوزه وب سریعاً به فراموشی سپرده میشوند یا اصلاً هیچگاه شناخته نمیشوند اما Svelte شناخته شد و هنوز هم به شناختهشده باقی مانده است (۴۸ هزار ستاره در گیت هاب).
تفاوت اصلی Svelte با دیگر فریمورکها:
اِسوِلت مانند react و vue یک فریمورک کامپوننت است اما جذابترین ویژگی آن وجود یک کامپایلر برای کدهای شما است و به همین دلیل است که تا این حد نیز موردتوجه قرار گرفته است.
✅ مزایای Svelte
1- حذف Virtual DOM
2- الگوی کامپوننت محور
3- انیمیشن های آماده
4- مدیریت state ساده تر
5- هدف های خروجی چندگانه
❌ معایب Svelte
1- جوان بودن Svelte
2- جامعه آماری کوچک
3- زمان کامپایل
4- داکیومنتیشن ضعیفتر
5- عمر کوتاه dev tools
📃 در این مقاله میخواهیم در رابطه با ویژگیهای مثبت Svelte صحبت کنیم:
https://www.roxo.ir/introduction-to-svelte
🆔 @roxo_ir
همانطور که میدانید دنیای جاوااسکریپت پر از انواع و اقسام فریمورکهای مختلف است که هیچکدام پایانی ندارند. Svelte نسبتاً یکی از تازهکارهای این میدان است. معمولاً ابزارهای جاوااسکریپتی به دلیل تعداد بالای آنها در حوزه وب سریعاً به فراموشی سپرده میشوند یا اصلاً هیچگاه شناخته نمیشوند اما Svelte شناخته شد و هنوز هم به شناختهشده باقی مانده است (۴۸ هزار ستاره در گیت هاب).
تفاوت اصلی Svelte با دیگر فریمورکها:
اِسوِلت مانند react و vue یک فریمورک کامپوننت است اما جذابترین ویژگی آن وجود یک کامپایلر برای کدهای شما است و به همین دلیل است که تا این حد نیز موردتوجه قرار گرفته است.
✅ مزایای Svelte
1- حذف Virtual DOM
2- الگوی کامپوننت محور
3- انیمیشن های آماده
4- مدیریت state ساده تر
5- هدف های خروجی چندگانه
❌ معایب Svelte
1- جوان بودن Svelte
2- جامعه آماری کوچک
3- زمان کامپایل
4- داکیومنتیشن ضعیفتر
5- عمر کوتاه dev tools
📃 در این مقاله میخواهیم در رابطه با ویژگیهای مثبت Svelte صحبت کنیم:
https://www.roxo.ir/introduction-to-svelte
🆔 @roxo_ir