Code Module | کد ماژول
1.91K subscribers
357 photos
42 videos
6 files
355 links
Hello World 🌎

<> Earth is programmable if you code it </>

Group 👇🏻
@CodeModuleGap

Contact Us 👇🏻
@MrShahiin
@neoMahan
Download Telegram
درود بر همه ی دوستان عزیز

🔥به کد ماژول خیلی خوش اومدید🔥

قصد داریم فراتر از کد، با هم به دنیای جذاب برنامه‌نویسی سفر کنیم و از تجربیات همدیگه استفاده کنیم.

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

در این مسیر پرچالش و جذاب
خوشحالیم که همراه ما هستید
❤️
Please open Telegram to view this post
VIEW IN TELEGRAM
11❤‍🔥4😍2
تا حالا حتما اسم GraphQL و شنیدید ولی دقیقا چه کاربردی داره؟🤨

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

برخی از ویژگی های GraphQl🔥

شما دقیقا داده هایی که نیاز دارید و میتونید به دست بیارید. دیگر نیازی به دریافت اطلاعات بیش از حد که در REST مرسوم است نداریم.


زبان GraphQL یک نقطه انتهایی منفرد در اختیار ما قرار میده و دیگر نیازی به نسخه 2 یا نسخه 3 برای API یکسان وجود نداره.


زبان GraphQL دارای «نوع‌بندی قوی» (strongly-typed) و با استفاده ازش می‌توان یک کوئری معتبر درون سیستم نوع GraphQL پیش از اجرا ساخت. GraphQL به ساخت API-های قدرتمند کمک می‌کنه.


پس از این مقدمه کوتاه در مورد GraphQL، دلیل قدرت آن و این که چرا محبوبیت زیادی این روزها کسب کرده است و متوجه شدیم، اگه مایل بودید اطلاعات بیشتری در مورد آن کسب کنید، پیشنهاد می‌کنم به مستندات موجود در وب‌سایت آن مراجعه کنید.


#frontend #backend
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
👍93
اشتباهات رایج برنامه نویسان مبتدی🧐


🔵نداشتن برنامه ریزی

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


🔵دست کم گرفتن کیفیت کد

اگر فقط می تونید روی یک جنبه از کدی که می نویسید تمرکز کنید ، باید خوانایی آن باشه. کد کثیف حذف می شود. حتی قابل بازیافت هم نیست.

هرگز اهمیت کیفیت کد را دست کم نگیرید. به کدنویسی به عنوان راهی برای برقراری ارتباط با پیاده سازی ها نگاه کنید. وظیفه اصلی شما به عنوان یک کدنویس این است که پیاده سازی راه حل هایی را که کار می کنید به روشنی ایجاد کنید.


🔵انتخاب اولین راه حل

این نشانه ظریف یک تازه وارد واقعی است. وقتی با مشكلی روبرو می شوند ، راه حلی پیدا می كنند و فقط با آن كار می كنند. آنها بلافاصله قبل از اینکه به پیچیدگی ها و شکست های احتمالی راه حل شناسایی شده فکر کنند ، سریعاً در اجرای آن عجله می کنند.اگرچه ممکن است راه حل اول وسوسه انگیز باشد ، اما راه حل های خوب معمولا زمانی کشف می شوند که همه راه حل هایی که پیدا کرده اید را بررسی کنید. اگر نمیتونید به چندین راه حل برای یک مسئله فکر کنید ، این احتمالاً نشانه این است که کاملاً مسئله را درک نمی کنید.



🔵جستجو نکردن

چالش های برنامه نویسی طبیعیه چرا که همیشه احتمال بروز باگ و خطا در پروژه های برنامه نویسی وجود داره و اصلا قرار نیست صفرتاصد همه پروژه ها را چشم بسته انجام بدیم، قطعا در طول انجام پروژه سوالات و مشکلاتی در برنامه نویسی بوجود میاد اما…

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


🔵عدم پذیرفت شکست

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



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


@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
6👌4
🔗 منظور از HTTP چیست؟

در اصل HTTP یک پروتکل است که وظیفه برقراری ارتباط میان Server و Clinet را در یک شبکه کامپیوتری برعهده دارد، به طوری که اطلاعات وب از طریق http به کامپیوتر بازدید کننده ارسال می شود

🔗 منظور از HTTPS چیست؟

حرف S در https به معنی امنیت است.
در https نشان از  امنیت است، که هم کامپیوتر بازدید کننده و هم وب سایت دارای کد محرمانه هستند که به آنها اجازه می دهد تا اطلاعتشان بصورت رمز گذاری شده بین یکدیگر رد و بدل شود، که برای فعال سازی ان باید ssl داشته باشیم.

تفاوت HTTP و HTTPS در چیست?

فرق بین http و https در امنیت این پروتکل است. در واقع ایراد HTTP عدم رمزگذاری اطلاعات است. این بدان معنی است که اگر فردی در میانه راه تبادل اطلاعات، بین کاربر و وب سایت قرار گیرد (مانند سرویس دهنده اینترنت) قادر است اطلاعات رد و بدل شده را مشاهده کند. ولی این اتفاق در https به دلیل امنیت آن نمی افتد.

میشه بازم دلیل بیاری که چرا HTTPS بهتره ؟

🔵 امنیت
🟢 سئو
🔴 معتبر تر برای گوگل
🟡 اینماد دو ستاره برای کسب و کار های ایرانی


#protocol #web #different
@CodeModule
🔥63
فریم ورک فلاتر چیه و چه کاربرد هایی داره؟🧐

فلاتر یک فریم ورک open source برای ساخت اپلیکیشن‌های موبایل است. این کتابخانه توسط شرکت گوگل در سال 2017 معرفی شد. فلاتر با زبان برنامه نویسی دارت نوشته شده و یک زبان چندمنظوره و شی گراست. با یادگیری زبان دارت و فریم ورک فلاتر می‌تونید برای اندروید و iOS اپلیکیشن بسازید. 


⚪️مزایای استفاده از فریم ورک فلاتر⚪️

◀️ بازدهی مناسب: با توجه به اینکه فلاتر Cross Platform است، می‌توانید با آن هم برای اندروید هم برای iOS اپلیکیشن بسازید. به این شکل هم در زمان و هم در هزینه‌های خود صرفه جویی خواهید کرد.

◀️ یادگیری آسان: یادگیری فلاتر و کار با آن آسان است. اگر قبلا با زبان‌های شی گرا (OOP) کار کرده باشید، شروع کار خیلی آسان خواهد شد.

◀️ سازگاری: از آنجایی که ابزارهای مورد استفاده ما (Widgets) بخشی از برنامه ما حساب می‌شوند نه پلتفرم یا سیستم عاملی که روی آن اجرا می‌شوند، در فلاتر وابستگی زیادی به نوع سیستم عامل یا نسخه آن نداریم. این یعنی پروژه ما احتمالا روی نسخه‌های مختلف یک سیستم عامل به درستی اجرا می‌شود و کار ما در تست محصول سبک‌تر است.


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

اطلاعات بیشتر و در داکیومنت این مقاله مطالعه کنید⬇️

Document 🌐

#framework #android #ios #flutter
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8
برتری های Zustand نسبت به Redux در چه چیزایی خلاصه میشه؟ 🧐


1⃣ سادگی کد:
کتابخانه Redux ممکنه نیاز به تعریف اکشن‌ها و ایجاد تعداد زیادی فایل داشته باشه. Zustand با سینتکس ساده‌تری کار می‌کنه و نیاز به کد کمتری داره.

🔢 کمترین نیاز به Boilerplate:
سیستم Redux برای تعریف اکشن‌ها، تعداد زیادی کد boilerplate نیاز داره. این در مقایسه با Zustand کمترین نیاز به کد تکراری و boilerplate داره.

🔢 انعطاف‌پذیری بیشتر:
کتابخانه Zustand اجازه میده وضعیت‌های مختلف را به صورت مستقل تعریف کنید و بدون نیاز به داشتن یک استور اصلی.

🔢 حجم کمتر:
کتابخانه Redux با دارا بودن تعداد زیادی اجزاء و مفاهیم می‌تونه به حجم برنامه افزوده شود. Zustand کوچکتر هست و به کاهش حجم برنامه کمک می‌کنه.


اگه شما هم به دنبال یک State Management قدرتمند، سبک و ساده میگردید، کتابخانه Zustand و به هیچ وجه از دست ندید😉


Document 🌐

#frontend #zustand #statemanager
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥63
چرا باید تایپ‌اسکریپت و یاد بگیریم؟ 😀

یکی از جذاب‌ترین تکنولوژی‌هایی که وارد دنیای توسعه وب شده قطعا زبان برنامه ‌نویسی Typescript هست.

تایپ اسکریپت یک زبان برنامه نویسی مبتنی بر جاوا اسکریپته که توسط شرکت مایکروسافت توسعه یافته. تایپ اسکریپت به عنوان یک Superset برای جاوا اسکریپت در نظر گرفته میشه.
منظور از Superset بودن یک زبان برنامه نویسی اینه که مبتنی بر یک زبان برنامه نویسی دیگه هست و ویژگی‌های زیادی و به اون زبان اضافه میکنه.


اما جدای از این موارد تایپ اسکریپت چه ویژگی‌هایی داره که به ما ارائه کنه؟😀


🔢 فرایند یادگیری آسان

تایپ اسکریپت فرایند یادگیری بسیار ساده‌ای داره و نیازمند دوره های آموزشی طولانی نیست. برای یادگیری تایپ اسکریپت ابتدا نیاز دارین که به خوبی با جاوا اسکریپت آشنایی داشته باشید. در این صورت به راحتی میتونید به یادگیری تایپ اسکریپت بپردازید.


🔢 ترجمه به جاوا اسکریپت

تایپ اسکریپت قابلیت اجرا شدن به صورت مستقیم و نداره چرا که به کدهای صفر و یک تبدیل نمیشه. به جای این تایپ اسکریپت کدهاشو و به جاوا اسکریپت تبدیل می‌کنه و کدها را در نهایت اجرا می‌کنه. این مسئله باعث سازگاری بیشتر میشه و مهم نیست که شما از چه پلتفرم یا مرورگری استفاده میکنید.


🔢 شئ‌گرایی قدرتمند

تایپ اسکریپت یک زبان برنامه نویسی توانمند و بسیار قدرتمند در زمینه پارادایم شئ‌گرایی هست و تمام ویژگی‌های یک سیستم برنامه نویسی شئ‌گرا مانند جاوا و در اختیارتون قرار میده.


🔢 پشتیبانی از کتابخانه‌های مختلف

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



یادگیری تایپ اسکریپت قطعا برای هر دولوپری لازمه و ویژگی جدیدی و به رزومه کاری‌تون اضافه می‌کنه که شما رو به یک توسعه دهنده کارآمدتر تبدیل خواهد کرد🔥



Document 😀

#typeScript
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥73
This media is not supported in your browser
VIEW IN TELEGRAM
ModuleTrick 🔢

توی این اپیزود قراره روش جدیدی برای استایل دهی به المنت های مشابه داخل یک والد و یاد بگیریم⚡️

#ModuleTrick #css
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥92
تفاوت کتابخانه (library) و فریم‌ورک (framework) چیه؟ 🧐

یکی از سوالای اساسی توی مصاحبه ها اینه که چه تفاوتی بین کتابخانه و فریم ورک هست؟

🔵 تفاوت اصلی بین کتابخانه و فریم‌ورک در “وارونگی کنترل (inversion of Control)” هست. وقتی که شما یک method رو از کتابخانه فراخوانی می‌کنید، شمایید که بر رویکرد اون کنترل دارید. اما در فریم‌ورک این‌مسئله برعکسه.

فریم‌ورکه که کدهای شما و فراخوانی می‌کنه.

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

🔵 در سمت دیگه، کتابخانه هیچ چیزی رو برای شروع در اختیار شما نمیزاره. در مقابلِ فریم‌ورک، ویژگی‌های محدودتری در کتابخانه وجود داره. همچنین برای استفاده گسترده‌تر از اونا باید از ویژگی‌های ثالث (third-party) دیگر استفاده کنید.

🔵 فریم‌ورک، تمامی جریان (flow) رو در کنترل خود داره و نقاطی از پیش تعریف‌شده وجود داره که شما باید، با کد‌های خودتون اونا رو تکمیل کنید. همچنین فریم‌ورک معمولاً پیچیده‌تر هستن.

🔵 فریم‌ورک اسکلتی رو تعریف می‌کند که در اون، برنامه ما ویژگی‌های خاص خودشو برای تکمیل‌کردن این‌اسکلت به اون اضافه میکنه. از این‌طریق، فریم‌ورک در زمان موردنیاز کدهای شمارو فراخوانی ‌می‌کنه.
در هردوی اونا – فریم‌ورک و کتاب‌خانه، APIهای تعریف شده‌ای موجوده که توسط برنامه‌نویسان، مورد استفاده قرار می‌گیره.

در نهایت میشه به این نتیجه رسید که کتابخانه، تو توسعه ویژگی‌های اپلیکیشن به ما کمک می‌کنه و فریم‌ورک اسکلت اون رو تشکیل میده. در این‌میان API، اتصال دهنده‌ای برای استفاده هر‌دوی اونا در کنار هم است😉


#framework #library #different
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👌2
5 کتابخانه خفن ری اکت که احتمالا ازشون
بی خبری!
🔵


1⃣ کتابخانه Ant Design

کتابخانه Ant Design در ری اکت شامل مجموعه بسیار گسترده و متنوع از کامپوننت های از پیش ساخته شده و آماده برای توسعه اپیکیشن های ری اکتی هست!
این کتابخانه بیش از 75 کامپوننت آماده داره که هم ظاهر جذابی دارن و هم امکانات فوق العاده ای در اختیار ما میزارن.


🔢 کتابخانه React-motion

کتابخانه های خیلی زیادی برای بحث انیمیشن در ری اکت وجود دارن اما کتابخانه React-motion از spring configuration برای اعمال انیمیشن استفاده میکنه و پیچیدگی خیلی کمی داره.
پیاده سازی انیمیشن به کمک React-motion در ریکت خیلی آسونه و نیاز به یادگیری خاصی نداره.


🔢 کتابخانه Enzyme

کتابخانه Enzyme در ری اکت برای تست نویسی کاربرد داره و معمولا نسبت به سایر کتابخانه های تست نویسی در ری اکت محبوب تره.
کتابخانه Enzyme در ریکت خیلی انعطاف پذیره و به همین دلیل نسبت به سایر کتابخانه های تست نویسی در ریکت ترجیح داده میشه.


🔢 کتابخانه Advanced Cropper

کتابخانه React Advanced Cropper به ما اجازه میده تصاویر رو در اپیکیشن های ری اکتی، برش بدیم ( ابزار Crop )

همچنین میشه به کمک کتابخانه Advanced Cropper در ری اکت، سایز و نسبت تصویر رو تغییر داد ( Aspect ratio )


🔢 کتابخانه React Helmet

کتابخانه React Helmet یک کامپوننت بسیار کاربردیه که در زمینه مدیریت تگ head هر صفحه به ما کمک میکنه.

از اونجایی که خزنده های موتور های جستجوگر مثل گوگل از طریق تگ head هر صفحه متوجه میشن اون صفحه شامل چه اطلاعاتیه و بر این اساس رتبه بندی میشن، استفاده از کتابخانه React Helmet تو ری اکت ضروریه ( البته اگه نیاز به سئو داشته باشیم )


شاید یادگیری همه این کتابخانه ها ضروری نباشه اما به عنوان یک React Developer بهتره باهاشون آشنا باشید تا درصورت نیاز، از اونها استفاده کنید🔥


#react
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥62
This media is not supported in your browser
VIEW IN TELEGRAM
🛸 انجام بازی ماریو کارت از طریق تراشه نورالینک!

🔵اولین دریافت‌کننده تراشه مغزی نورالینک، حالا با ذهنش می‌تونه یه بازی رو پیش ببره! این تراشه مغزی امکان کنترل نشانگر ماوس یا کیبورد، تنها از طریق افکار و سیگنال‌های مغز رو ممکن می‌کنه...

#news #ai
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
6