Roxo
2.71K subscribers
1.33K photos
44 videos
2 files
370 links
🎓 آکادمی آنلاین روکسو

روکسو یک وبسایت آموزش آنلاین است که در آن هم میتوانید مهارت مورد نیازتان را یاد بگیرید و هم تخصص خود را به دیگران یاد بدهید.

آدرس وبسایت:

www.roxo.ir

ارتباط با ما از طریق تلگرام:

@roxo24

آدرس کانال تلگرام:
Download Telegram
معماری GraphQL یک معماری برای طراحی APIهاست اما با بزرگی خود کمتر در ایران شناخته می‌شود چرا که بیشتر توسعه‌دهندگان در ایران از معماری REST استفاده می‌کنند.

اگر بخواهیم به زبان فنی صحبت کنیم می‌گوییم که GraphQL یک زبان کوئری برای API است، بنابراین GraphQL توصیف می‌کند که یک API چطور داده‌هایش را در معرض نمایش قرار دهد.

در واقع می‌توانید با استفاده از GraphQL چندین سیستم را در پس‌زمینه داشته باشید اما برای تمام آن‌ها یک API واحد در نظر بگیرید.


📃 این مقاله برای افرادی است که با API ها کار کرده اند و حالا می خواهند وارد دنیای GraphQL شوند:

👉 https://www.roxo.ir/graphql-schema


💻 #برنامه_نویسی #GraphQL

🆔 @roxo_ir
🔋 به‌روز‌رسانی PHP به نسخه‌ی 8 بدون شکستن اسکریپت

از آنجایی که نسخه‌ی جدید PHP یک Major release است (نسخه‌ای کاملا جدید که دارای breaking changes است، یعنی کدهای قدیمی ممکن است در آن اجرا نشوند) باید قبل از به‌روزکردن سرور خود به PHP8 حتما این مقاله را مطالعه کنید.


📃 این مقاله به شما نشان می‌دهد چطور می‌توانید قبل از به‌روز‌رسانی نسخه‌ی PHP سرور،‌ کدهایتان را به‌روزرسانی کنید تا مشکلی پیش نیاید:

👉 https://www.roxo.ir/update-php-to-version-8-without-breaking-the-script



💻 #برنامه_نویسی #PHP

🆔 @roxo_ir
🔻🔻 گروه بحث و تبادل نظر و رفع اشکال درباره‌ی مباحث برنامه‌نویسی:

👇👇👇
t.me/roxogap
زبان #برنامه_نویسی بازی‌های مختلف


🆔 @roxo_ir
گیت‌هاب مکانی پر از پروژه‌های مختلف است که برخی از آن‌ها شخصی و برخی دیگر عمومی هستند.


📃 در این مقاله به بررسی پروژه‌های محبوب و کاربردی برای توسعه‌دهندگان front-end و back-end پرداخته‌ایم:

👉 https://www.roxo.ir/github-projects-you-should-bookmark


💻 #برنامه_نویسی #گیت_هاب

🆔 @roxo_ir
🟡‌ اگر به وب‌سایت Next.js بروید می‌بینید که جمله‌ی بزرگی در آن نوشته شده است:

The React Framework for Production

این جمله به معنی این است که next یک فریم‌ورک react برای مرحله بهره‌برداری (production) است. می‌توان این جمله را به صورت fullstack frarmework for react نیز نوشت، یعنی یک فریم ورک fullstack (شامل backend و frontend) برای کتابخانه react!

🟡 اگر از این جملات فنی دور شویم، می.توانیم next.js را به زبان ساده تعریف کنیم: فریم‌ورکی که از react استفاده می‌کند و تمام برنامه شما (سمت سرور و سمت کلاینت) را برایتان می‌سازد. این فریم‌ورک قابلیت‌های بسیار بیشتری را نسبت به react به شما می‌دهد و در واقع react را توسعه می‌دهد. توجه داشته باشید که در next.js هنوز هم کد react می‌نویسیم اما همانطور که گفتیم قابلیت‌های آن بسیار زیاد و قوی شده است و برای هر مسئله کوچکی نیاز به استفاده از کتابخانه‌های خارجی ندارید.


📃 در این مقاله بطور مفصل با Next.js و کاربردهای آن آشنا می‌شوید:

👉 https://www.roxo.ir/what-is-next-js


💻 #برنامه_نویسی #ری_اکت

🆔 @roxo_ir
🔋 مقدار رم مصرفی مرورگرها


🆔 @roxo_ir
🧨 معرفی وب‌سایت‌های کاربردی برای توسعه‌دهندگان

اگر از توسعه‌دهندگان دنیای وب هستید، حتما می‌دانید که اهمیت ابزارها در دنیای توسعه وب چقدر زیاد است. هر مهارتی که داشته باشید برای ساخت یک محصول با کیفیت، نیاز به ابزارهای خاصی دارید.

📃 در این مقاله به معرفی بهترین ابزارها برای توسعه‌دهندگان وب می‌پردازیم تا شما بتوانید با استفاده از آن‌ها کیفیت وب‌سایت خود را بالا ببرید:

👉 https://www.roxo.ir/websites-for-developers


💻 #برنامه_نویسی

🆔 @roxo_ir
آشنایی با Gatsby js


گتسبی یک SSG است اما از تکنولوژیهای React و Webpack و GraphQL استفاده میکند.

⁉️ شاید بپرسید اگر Gatsby یک SSG است چرا باید از این تکنولوژیها استفاده کند؟

🔻با استفاده از React میتوانیم بهترین سایتها را بسازیم. از طرف دیگر بسیاری از توسعه‌دهندگان با React کار میکنند و استفاده از آن برایشان تبدیل به یک پیش‌فرض شده است.

🔻همچنین GraphQL یک زبان کوئری برای APIهاست و اجازه می‌دهد دقیقا داده‌های موردنیازتان را مشخص کنید تا داده‌های اضافی دریافت نکنید. کوئری‌های GraphQL کمک میکنند تا چندین داده مختلف را در یک کوئری دریافت کنید.

🔻 در نهایت (webpack) یک bundler است و کدهای جاوااسکریپت شما را در یک فایل نهایی به نام bundle قرار میدهد.

ترکیب این سه ابزار باعث میشود از تکنولوژیهای روز دنیا استفاده کنید و در عین حال یک سایت استاتیک داشته باشید. علاوه بر این پلاگینهای زیادی برای Gatsby وجود دارد. این مسئله در کنار React و پلاگینهای قدرتمند آن باعث میشود Gatsby js به غولی بزرگ تبدیل شود.


📃 مفصل راجع به Gastby js بخوانید:

👉 https://www.roxo.ir/what-is-gatsby


💻 #برنامه_نویسی

🆔 @roxo_ir
وب سایت stackoverflow هر سال سوالات مختلفی را در قالب پرسشنامه طراحی کرده و در اختیار توسعه‌دهندگان و برنامه‌نویسان سراسر دنیا قرار می‌دهد. نتایج این پرسشنامه در سال 2020 بصورت زیر بوده است:

🔹برای هشتمین سال متوالی، جاوا اسکریپت به عنوان محبوب‌ترین و بزرگ‌ترین زبان برنامه‌نویسی دنیا انتخاب شد

🔹پراستفاده‌ترین فریم‌ورک‌ تحت وب:
جی‌کوئری با 43 درصد رای

🔹پراستفاده‌ترین کتابخانه، ابزار و تکنولوژی‌ ثانویه:
نودجی‌اس با 51 درصد رای

🔹پراستفاده‌ترین پایگاه داده:
مای‌اس‌کیو‌ال با 55 درصد رای

🔹پراستفاده‌ترین پلتفرم توسعه‌دهندگان
لینوکس با 55 درصد رای

🔹محبوب‌ترین زبان‌ برنامه‌نویسی:
86 درصد از جامعه آماری به Rust رای داده‌اند.

🔹منفورترین زبان برنامه‌نویسی:
80 درصد از جامعه آماری به VBA رای داده‌اند.

🔹محبوب‌ترین فریم‌ورک‌:
71 درصد از جامعه آماری به ASP.NET Core رای داده‌اند.

🔹منفورترین فریم‌ورک‌:
76 درصد از جامعه آماری به Angular.js رای داده‌اند.



📃 گزارش کاملِ نتایج این پرسشنامه را در لینک زیر بخوانید:

https://www.roxo.ir/stackoverflow-annual-questionnaire-report-2020


💻 #برنامه_نویسی

🆔 @roxo_ir
اگر می‌خواهید بر فراز قله‌‌ی طراحی وب بایستید، باید حتما زبان جاوا اسکریپت (JavaScript) را یاد بگیرید.

🟡 دوره‌ی آموزش جاوا اسکریپت سایت روکسو، یکی از کامل‌ترین و گسترده‌ترین دوره‌های آموزش این زبان در وب فارسی است:

👉 https://www.roxo.ir/course/learn-javascript-course


🎁 10 درصد تخفیف اولین خرید دوره از سایت روکسو با کد تخفیف first
مقدمه‌ای بر GitHub Actions

اگر بخواهید در توسعه برنامه‌های متن‌باز (open source) شرکت کنید یا از پروژه‌های متن‌باز زیاد استفاده می‌کنید، احتمالا با عبارت GitHub Actions (به معنی عملیات‌های گیت‌هاب) آشنا شده‌اید. GitHub Actions به شما اجازه می‌دهند عملیات‌ خاصی به نام action را به صورت خودکار روی repository خود انجام دهید و به نوعی یک چرخه زندگی (lifecycle) را برایش تعریف کنید. این موضوع در هنگام بهره‌برداری پیوسته (continuous deployment) و یکپارچه‌سازی پیوسته (Continuous Integration) به شما کمک می‌کنند.


📃 این مقاله برای افراد مبتدی در نظر گرفته نشده است بلکه برای برنامه‌نویسانی است که با گیت‌هاب و سیستم مدیریت نسخه مانند git کار کرده‌اند. GitHub Actions از مباحث پیچیده‌تر گیت‌هاب هستند:

👉 https://www.roxo.ir/github-actions



💻 #برنامه_نویسی #گیت_هاب

🆔 @roxo_ir
👨‍💻 در این مقاله می‌خواهیم یک وب‌سایت را به صورت full stack طراحی کنیم، یعنی هم front-end و هم back-end را با تکنولوژی های روز دنیا طراحی کنیم تا شما با پروژه‌های بزرگ و واقعی آشنا شوید.

💪 این پروژه برای افرادی طراحی شده است که زمان مناسبی را در دنیای توسعه وب گذرانده‌اند و می‌توانند به صورت حرفه‌ای به طراحی front-end و back-end بپردازند.

🧠 این پروژه یک پروژه Full Stack است، بنابراین از تکنولوژی های زیادی استفاده می‌کند:

React
TypeScript
GraphQL
URQL
Node.js
PostgreSQL
Redis
Next.js
TypeGraphQL
MikroORM و TypeORM


👉 https://www.roxo.ir/build-a-modern-graphql-api-with-react-postgresql-node-part-1



💻 #برنامه_نویسی

🆔 @roxo_ir
یکی از پایگاه‌های داده بسیار مشهور در دنیا PostgreSQL است که شباهت بسیار زیادی به MySQL دارد (مثلا هر دو از زبان SQL استفاده می‌کنند) اما قابلیت‌های آن نسبت به MySQL بسیار بیشتر است و همچنین آمادگی بیشتری برای کار با داده های بسیار بزرگ را دارد.


📃 در این مقاله قصد داریم به فرآیند نصب این پایگاه داده و پیکربندی آن بپردازیم:

👉 https://www.roxo.ir/how-to-install-and-configure-the-postgresql-database



💻 #برنامه_نویسی #PostgreSQL

🆔 @roxo_ir
اگر توسعه‌دهنده سرور باشید احتمالا با نام deno آشنایید چرا که در سال گذشته سروصدای زیادی به پا کرد.

اگر به دنبال تعریف و توضیحات Deno باشید احتمالا با جمله ای شبیه به این جمله روبرو می شوید: Deno یک TypeScript/Javascript Runtime است که بر اساس موتور V8 جاوا اسکریپت و زبان Rust ساخته شده است. این جمله یعنی چه؟ برای درک این جمله باید دو مفهوم Runtime و موتور V8 را بدانید:

🔹 ران‌تایم (Runtime): محیط اجرا برای یک برنامه

🔹 موتور V8: زبان جاوا اسکریپت برای کامپایل شدن و اجرا شدن نیاز به موتور خاصی دارد. V8 موتوری است که گوگل برای زبان جاوا اسکریپت ساخته است.


دِنو در واقع دقیقا مانند Node.js است، یعنی محلی برای زبان جاوا اسکریپت یا تایپ اسکریپت است تا بتوانند به راحتی در آن اجرا شوند. با استفاده از Deno می‌توانیم سرور خود را با جاوااسکریپت و تایپ‌اسکریپت بنویسیم چرا که Deno از هر دو مورد پشتیبانی می‌کند.


📃 مطلب «Deno در یک مقاله! +‌ ساخت API با Oak» را از دست ندهید:

👉 https://www.roxo.ir/what-is-deno



🆔 @roxo_ir
دسکتاپ باید اینجوری مرتب باشه 😁


🆔 @roxo_ir
🗝 ا آث (OAuth) یک فریم‌ورک یا پروتکل صدور مجور (authorization) است که به برنامه‌ها اجازه می‌دهد که بدون داشتن رمز عبور و اطلاعات حساس، از طریق پروتکل HTTP به منابع مشخصی مثل اطلاعات کاربران دسترسی داشته باشند. چنین مواردی را حتما در API وب سایت‌هایی مانند GitHub دیده‌اید. در واقع شما با استفاده از OAuth 2.0 می‌توانید اطلاعات یک کاربر در یک سایت دیگر را بخوانید (البته به صورت محدود) بدون اینکه به رمز عبور آن کاربر دسترسی داشته باشید.


📃 در مقاله‌ی زیر بصورت کامل و جامع با OAuth و احراز هویت به روشی کارآمد و حرفه‌ای خواهید شد:

👉 https://www.roxo.ir/oauth-%da%86%db%8c%d8%b3%d8%aa


💻 #برنامه_نویسی

🆔 @roxo_ir
♒️ همانطور که در برنامه‌نویسی پیشرفت می‌کنید و کدهای خصوصی خود را می‌نویسید، این کدها را روی هم انباشته می‌کنید. گاهی برخی از پروژه‌ها آنقدر بزرگ هستند که حجم کدها بسیار بالا می‌رود. کار کردن در این حجم از کد و حفظ کردن تمام نام‌های توابع، کلاس‌ها و... واقعا سخت است!

♒️ باید اعتراف کرد که به یاد داشتن نام توابع، کلاس‌ها، ثابت‌ها و انواع کدهایی که نوشته‌ایم، غیرممکن است. حال پلاگین‌ها و کتابخانه‌ها را نیز به این وضعیتِ درهم‌ریخته اضافه کنید! باید هم مراقب کدهای خود باشیم، هم مراقب کلاس‌ها، توابع و... رزرو شده در خودِ PHP و هم مراقب کدهایی که در یک کتابخانه یا پلاگین استفاده شده‌اند!

🟣‌ در واقع namespaceها برای حل دو مشکل اساسی طراحی شده‌اند:

▪️تصادم نام‌ها (مشکل یکی بودن نام دو تابع، کلاس و...) بین کدهای خودتان و کلاس‌ها، توابع و ثابت‌های داخلی php
▪️ایجاد قابلیت کوتاه‌تر کردنِ نام‌گذاری‌های بسیار طولانی

قبل از به وجود آمدن namespaceها راه حل خاصی برای این مشکلات وجود نداشت.



📃 بحث جذاب namespace در php را حتما بخوانید:

👉 https://www.roxo.ir/what-is-namespace-in-php


💻 #برنامه_نویسی #php

🆔 @roxo_ir
واقعیتِ دردناک زندگیامون 😁

🆔 @roxo_ir
قبل از معرفی PSR، کدنویسی با زبان PHP هیچ قانونی نداشت و هر کسی به هر شکلی که می‌خواست کدنویسی می‌کرد. PSR مخفف PHP Standards Recommendation یا «استانداردهای برنامه‌نویسی PHP» است.

تعداد زیادی PSR وجود دارد و هرکدام از آن‌ها به یک مبحث خاص در PHP می‌پردازد اما کمیته FIG تمام آن‌ها را تایید نکرده است.


📃 در این مقاله به PSRهای تصویب شده‌ای می‌پردازیم که برای ما مهم هستند:

👉 https://www.roxo.ir/psr-contracts


💻 #برنامه_نویسی #PHP


🆔 @roxo_ir