ربات کدماژول منتشر شد!🤖
Cm Cop که ربات اختصاصی کامیونیتی کدماژول هست، چند روزی میشه که منتشر و ریلیز شده و با استفاده از این ربات میتونید گروهتون رو به صورت کامل مدیریت کنید. این ربات ویژگی های زیادی مثل warn ،ban ،mute، کاربر ویژه، سرگرمی های متفاوت و... داره که واقعا در قالب یه پست نمیشه تک تک فیچر هاش رو بررسی کنیم.
اگه علاقه مند به بررسی ربات بودید، میتونید به پیوی ربات مراجعه کنید و کامند help/ رو بزنید تا تک تک فیچر ها رونمایی بشه، و همچنین میتونید به داکیومنتش هم مراجعه کنید.
مهم تر از همه این ربات اوپن سورس هست و اگه ایده ای داشتید یا فیچری مد نظرتون بود، اول میتونید به CONTRIBUTING مراجعه کنید و سپس ایدتون رو به صورت pr ارسال کنید.
🟠 Repository (استار یادتون نره 🙂 )
@CodeModule
@CodeModuleGap
Cm Cop که ربات اختصاصی کامیونیتی کدماژول هست، چند روزی میشه که منتشر و ریلیز شده و با استفاده از این ربات میتونید گروهتون رو به صورت کامل مدیریت کنید. این ربات ویژگی های زیادی مثل warn ،ban ،mute، کاربر ویژه، سرگرمی های متفاوت و... داره که واقعا در قالب یه پست نمیشه تک تک فیچر هاش رو بررسی کنیم.
اگه علاقه مند به بررسی ربات بودید، میتونید به پیوی ربات مراجعه کنید و کامند help/ رو بزنید تا تک تک فیچر ها رونمایی بشه، و همچنین میتونید به داکیومنتش هم مراجعه کنید.
در گروه کدماژول هم این ربات فعاله.
مهم تر از همه این ربات اوپن سورس هست و اگه ایده ای داشتید یا فیچری مد نظرتون بود، اول میتونید به CONTRIBUTING مراجعه کنید و سپس ایدتون رو به صورت pr ارسال کنید.
@CodeModule
@CodeModuleGap
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡11🔥6
مواردی در رابطه با ساختار آرایه ها که باید بدونید! 🦦
اول از همه باید بدونیم که دو نوع آرایه وجود داره، استاتیک و داینامیک.
1️⃣ آرایه های استاتیک مقادیر خودشون در استک ذخیره میکنن و اندازشون باید در زمان کامپایل مشخص باشه. این محدودیت به این معنی هست که اگه میخواید یک آرایه با اندازه ورودی کاربر باشه، نمیتونیم از آرایه استاتیک استفاده کنیم. از طرف دیگه آرایه های داینامیک به شما امکان میدن اندازه آرایه رو در زمان اجرا مشخص کنین.
2️⃣ آرایه ها میتونن هر تعداد ابعاد (1 بعدی، 2 بعدی، سه بعدی و غیره) داشته باشن و هر بعد میتونه هر اندازه ای داشته باشه که توسط حافظه کامپیوتر محدود میشه.
3️⃣ حلقه های For مناسب ترین ساختار برای تکرار روی یک آرایه هستن. همچنین همونطور که میدونید ایندکس های آرایه از 0 شروع میشن نه 1.
4️⃣ آرایه ها راهی برای ذخیره لیستی از آیتم ها در یک متغیر فراهم می کنن. قبلاً اگه نیاز به ذخیره چندین مقدار داشتید، برای هر کدوم متغیرهای جداگانه ای تنظیم کردید. با این حال، آرایه ها این کار رو با اجازه دادن به مقادیر متعدد برای ذخیره تحت یک نام متغیر ساده میکنن. به عنوان مثال، میتونیم یک آرایه برای ذخیره فهرستی از نامها (رشتهها)، سنها (اعداد صحیح)، اعداد اعشاری (floats)، یا حتی تایپ سفارشی ایجاد کنید. هر مقدار در یک آرایه در یک bucket جداگانه ذخیره میشن و میتونید بر اساس ایندکس اون در لیست به یک باکت خاص مراجعه کنین.
6️⃣ حافظه مصرف شده توسط یک آرایه استاتیک به دو عامل بستگی داره:
🔵 اندازه آرایه: این تعداد کل عناصر آرایه هست.
🔵 اندازه هر عنصر: این به نوع داده آرایه بستگی داره. به عنوان مثال، یک «int» معمولاً 4 بایت، یک «char» یک بایت و یک «float» معمولا 4 بایت و یک ««double»» معمولا 8 بایت داره.
7️⃣ کل حافظه مورد نیاز یک آرایه استاتیک رو میشه با استفاده از فرمول زیر محاسبه کرد:
- Memory Consumption (bytes) = Number of Elements * Size of Each Element (bytes)
به عنوان مثال:
در اینجا، «myArray» دارای 100 عنصر هست و هر «int» معمولاً 4 بایت هست که به صورت زیر محاسبه میشه:
این آرایه 400 بایت حافظه مصرف میکنه.
برای اطلاعات و مشاهده موارد بیشتر، پیشنهاد میکنم مقالات زیر رو بخونید.
- Article
- Article
- Article
#array
@CodeModule
اول از همه باید بدونیم که دو نوع آرایه وجود داره، استاتیک و داینامیک.
هر باکت با یک ایندکس عددی همراه هست که از 0 شروع میشه و برای هر باکت بعدی 1 افزایش پیدا میکنه. این شاخص برای اشاره به یک ایندکس خاص در آرایه استفاده میشه. برای مثال، در یک آرایه «ages» با عناصر «[66، 53، 39، 24]»، باکت اول (ایندکس 0) مقدار «66» رو نگه میداره، باکت دوم (ایندکس 1) دارای «53» هست، و به همین ترتیب تا انتها.
- Memory Consumption (bytes) = Number of Elements * Size of Each Element (bytes)
به عنوان مثال:
int myArray[100];
در اینجا، «myArray» دارای 100 عنصر هست و هر «int» معمولاً 4 بایت هست که به صورت زیر محاسبه میشه:
- Memory Consumption (bytes)= 100 * 4 = 400(bytes)
این آرایه 400 بایت حافظه مصرف میکنه.
برای اطلاعات و مشاهده موارد بیشتر، پیشنهاد میکنم مقالات زیر رو بخونید.
- Article
- Article
- Article
#array
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡10🔥5❤🔥4👌1
زمان کارآموزی به چه نکاتی توجه کنیم؟ 🤔
🔵 تا میتونید سوال بپرسید
شما به عنوان یک توسعه دهنده سنیور در شرکت استخدام نشدید، پس کسی از شما این انتظار رو نداره که همه چیز رو بدونید و اصلا سوالی نپرسید. کارآموزی نقطهای از کار حرفهای شماست که در اون باید تا جایی که میتونید چیزهای جدیدی رو یاد بگیرید. یکی از روشهای مهم و کارساز برای یادگیری موضوعات جدید نیز سوال پرسیدن از چگونگی کار کردن اونها هست.
🔵 رفتار دوستانه و تعامل داشته باشید
به عنوان کارآموز، این مهمه که شما بخواید و سعی کنید با همکاراتون آشنا بشید. از این گذشته، ایجاد شبکهای از دوستان، یکی از بهترین قسمتهای دوره کارآموزی هست. شما باید با شرکت در جلسات و حضور در فعالیتهای مختلف گروهی، با دیگران ارتباط بگیرید.
🔵 منظم و وقت شناس باشید
یکی از اصلیترین ویژگیهایی که مدیر و کارفرماها به عنوان وظایف کارآموز در نظر میگیرن، نظم و وقتشناسی فرد کارآموز هست. این نه تنها به معنای به موقع رسیدن به محل کاره، بلکه انجام به موقع و دقیق تسک ها هم میباشد. در طول دوره کارآموزی، باید یاد بگیرید که چگونه یک وظیفه رو برنامهریزی و تقسیمبندی کنید تا بتونید وقت خودتون رو به طور عاقلانه مدیریت کنید.
🔵 مسئولیت بیشتری درخواست کنید
برخی از سؤالات شما از مدیرتون باید شامل پرسشهایی در مورد افزایش مسئولیتهایی باشه، که میتونید به عهده بگیرید. فایده این موضوع اینه که مسیرهای شغلی در حرفه شما و رسیدن به یک کار دائمی، نیاز به بالا بردن پتانسیل کاری و انجام مسئولیتهای بیشتر داره. وقتی شما از مدیر و کارفرماتون درخواست کار بیشتر و متفاوتی دارید، انگیزه و علاقه شما رو میبینه و درک میکنه که چقدر برای این کار ارزش قائل هستید.
🔵 از همون اول انتظار استخدام شدن نداشته باشید
نکتهای که باید به یادتون بسپارید اینه که کارآموزی شما فقط یک تجربه یادگیری موقتی هست. اگرچه استخدام عالیه اما مهمه که بدونید دوره کارآموزی به معنای تضمین ادامه همکاری با شرکت مذکور و فعلی نیست. هدف اصلیتون اینه که تلاش کنید و تا حد امکان یاد بگیرید، چرا که کارآموزی میتونه برای فرصتهای شغلی بیشتر، دربهای جدیدتری رو به روی شما باز کنه.
#tips
@CodeModule
شما به عنوان یک توسعه دهنده سنیور در شرکت استخدام نشدید، پس کسی از شما این انتظار رو نداره که همه چیز رو بدونید و اصلا سوالی نپرسید. کارآموزی نقطهای از کار حرفهای شماست که در اون باید تا جایی که میتونید چیزهای جدیدی رو یاد بگیرید. یکی از روشهای مهم و کارساز برای یادگیری موضوعات جدید نیز سوال پرسیدن از چگونگی کار کردن اونها هست.
به عنوان کارآموز، این مهمه که شما بخواید و سعی کنید با همکاراتون آشنا بشید. از این گذشته، ایجاد شبکهای از دوستان، یکی از بهترین قسمتهای دوره کارآموزی هست. شما باید با شرکت در جلسات و حضور در فعالیتهای مختلف گروهی، با دیگران ارتباط بگیرید.
یکی از اصلیترین ویژگیهایی که مدیر و کارفرماها به عنوان وظایف کارآموز در نظر میگیرن، نظم و وقتشناسی فرد کارآموز هست. این نه تنها به معنای به موقع رسیدن به محل کاره، بلکه انجام به موقع و دقیق تسک ها هم میباشد. در طول دوره کارآموزی، باید یاد بگیرید که چگونه یک وظیفه رو برنامهریزی و تقسیمبندی کنید تا بتونید وقت خودتون رو به طور عاقلانه مدیریت کنید.
برخی از سؤالات شما از مدیرتون باید شامل پرسشهایی در مورد افزایش مسئولیتهایی باشه، که میتونید به عهده بگیرید. فایده این موضوع اینه که مسیرهای شغلی در حرفه شما و رسیدن به یک کار دائمی، نیاز به بالا بردن پتانسیل کاری و انجام مسئولیتهای بیشتر داره. وقتی شما از مدیر و کارفرماتون درخواست کار بیشتر و متفاوتی دارید، انگیزه و علاقه شما رو میبینه و درک میکنه که چقدر برای این کار ارزش قائل هستید.
نکتهای که باید به یادتون بسپارید اینه که کارآموزی شما فقط یک تجربه یادگیری موقتی هست. اگرچه استخدام عالیه اما مهمه که بدونید دوره کارآموزی به معنای تضمین ادامه همکاری با شرکت مذکور و فعلی نیست. هدف اصلیتون اینه که تلاش کنید و تا حد امکان یاد بگیرید، چرا که کارآموزی میتونه برای فرصتهای شغلی بیشتر، دربهای جدیدتری رو به روی شما باز کنه.
فارغ از این صحبت ها کار آموزی رو پیشنهاد نمیدم، چرا که در اکثر شرکتها کار آموزی فرقی با بردگی نوین نداره و حتی ممکنه شمارو عقب بندازه(هر چند که شرکت های خوب هم هست)
#tips
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12⚡4
تو کامپیوترت YouTube downloader داشته باش 📹
بدون شک برای هممون پیش اومده که نیاز داشته باشیم، یک ویدیویی رو از یوتیوب دانلود کنیم. بنابراین مجبوریم تا از سایت ها و ربات های مختلف استفاده کنیم که هر کدوم محدودیت هایی دارن و شاید دسترسی بهشون مشکل باشه.
پس خیلی خوبه که بتونیم یک YouTube downloader روی سیستم عامل خودمون داشته باشیم.
🪴 برای نصب این نرم افزار در لینوکس کافیه کامند زیر رو وارد کنید:
‼️ اگر هم curl ندارید یا ازش استفاده نمیکنید میتونید با wget نصب کنید:
🔥 همچنین کاربرای ویندوز و مک هم میتونن با دانلود فایل های این نرم افزار که داخل ریپازیتوری انتهای پست موجوده، از این نرم افزار کاربردی استفاده کنن.
برای کسب اطلاعات کامل و دسترسی دانلود این ابزار، میتونید به ریپازیتوری این ابزار مراجعه کنید.
🐱 Github
#tools #software
@CodeModule
بدون شک برای هممون پیش اومده که نیاز داشته باشیم، یک ویدیویی رو از یوتیوب دانلود کنیم. بنابراین مجبوریم تا از سایت ها و ربات های مختلف استفاده کنیم که هر کدوم محدودیت هایی دارن و شاید دسترسی بهشون مشکل باشه.
پس خیلی خوبه که بتونیم یک YouTube downloader روی سیستم عامل خودمون داشته باشیم.
sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
برای کسب اطلاعات کامل و دسترسی دانلود این ابزار، میتونید به ریپازیتوری این ابزار مراجعه کنید.
#tools #software
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡9🔥5
خروجی کد بالا؟ ✏️
Anonymous Quiz
5%
2
24%
7
18%
9
8%
3
45%
نمیدونم، رو آیکون لامپ کلیک میکنم تا متوجه بشم💡
🔥10
ارتباط امن با ماژول TLS 🪼
Transport Layer Security (TLS) پروتکلی هست که حریم خصوصی و یکپارچگی داده ها رو بین دو برنامه در حال ارتباط فراهم میکنه. در Node.js، ماژول "tls" یک ماژول داخلی هست که به دولوپر ها اجازه میده تا ارتباطات شبکه ایمن رو از طریق TCP (Transmission Control Protocol) با استفاده از TLS و SSL پیاده سازی کنن.
از این ماژول چه استفاده ای میشه؟
ماژول "tls" در درجه اول برای ایجاد سرورها و کلاینت های ایمن استفاده میشه که از طریق کانال های رمزگذاری شده ارتباط برقرار میکنن. این تضمین میکنه که هرگونه داده رد و بدل شده در برابر دستکاری محافظت میشه.
1⃣ ایجاد سرور TLS: متد «tls.createServer()» به شما امکان میده یک سرور امن ایجاد کنید که به اتصالات ورودی گوش میده. شما باید یک آبجکت حاوی certificates ها و کلیدهای مورد نیاز برای رمزگذاری ارائه کنید.
2⃣ ایجاد یک کلاینت سرور: به طور مشابه، متد «tls.connect()» به شما امکان میده کلاینت ایجاد کنید که به طور ایمن به یک سرور TLS متصل بشه و میتونید، گزینه هایی مانند نام، هاست و پورت رو مشخص کنیم.
3⃣ ویژگی های اضافی: ماژول
به صورت کلی ماژول
#nodejs #tls
@CodeModule
Transport Layer Security (TLS) پروتکلی هست که حریم خصوصی و یکپارچگی داده ها رو بین دو برنامه در حال ارتباط فراهم میکنه. در Node.js، ماژول "tls" یک ماژول داخلی هست که به دولوپر ها اجازه میده تا ارتباطات شبکه ایمن رو از طریق TCP (Transmission Control Protocol) با استفاده از TLS و SSL پیاده سازی کنن.
از این ماژول چه استفاده ای میشه؟
ماژول "tls" در درجه اول برای ایجاد سرورها و کلاینت های ایمن استفاده میشه که از طریق کانال های رمزگذاری شده ارتباط برقرار میکنن. این تضمین میکنه که هرگونه داده رد و بدل شده در برابر دستکاری محافظت میشه.
tls
همچنین از ویژگی های مختلفی مانند احراز هویت، و مدیریت چندین اتصال امن به طور همزمان پشتیبانی میکنه.به صورت کلی ماژول
tls
در Node.js ابزار قدرتمندی برای پیاده سازی ارتباطات ایمن در انواع اپلیکیشن ها هست. با استفاده از TLS، میتونیم اطمینان حاصل کنیم که داده های منتقل شده بین سرور و مشتریان شما محرمانه باقی میمونه و در برابر تهدیدات امنیتی رایج تا حد امکان محافظت میشه. برای کسب اطلاعات بیشتر به داکیومنت ماژول مراجعه کنید.#nodejs #tls
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9⚡2
چند نمونه از خز ترین جملات دولوپرا 👍
🔵 با html ناسا هک کن
🔵 جاوااسکریپت منطق نداره
🔵 فرانتاند برنامه نویسی حساب نمیشه
🔵 با مدحج پولدار میشی
🔵 دیگه php منسوخ شده
🔵 وردپرس برنامه نویسی حساب نمیشه
🔵 لینوکس پز دادن داره
مورد دیگه ای بود، تو کامنتا بگید😔
#fun
@CodeModule
مورد دیگه ای بود، تو کامنتا بگید
#fun
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
😁18
نگاهی به سایت State of JS 👍
سایت State of JS یک نظرسنجی سالانه در مورد تکنولوژیهای مربوط به جاوااسکریپت هست. این سایت اطلاعاتی درباره محبوبیت، ترندها، ابزارهای مختلف جاوااسکریپت مثل فریمورکها، کتابخانهها، و ابزارهای دیگه فراهم میکنه. کاربران و توسعهدهندگان جاوااسکریپت از سراسر جهان در این نظرسنجی شرکت میکنن و نتایج اون به صورت گزارشهای تحلیلی ارائه میشه.
Website🌐
#javascript
@CodeModule
سایت State of JS یک نظرسنجی سالانه در مورد تکنولوژیهای مربوط به جاوااسکریپت هست. این سایت اطلاعاتی درباره محبوبیت، ترندها، ابزارهای مختلف جاوااسکریپت مثل فریمورکها، کتابخانهها، و ابزارهای دیگه فراهم میکنه. کاربران و توسعهدهندگان جاوااسکریپت از سراسر جهان در این نظرسنجی شرکت میکنن و نتایج اون به صورت گزارشهای تحلیلی ارائه میشه.
این گزارشها میتونه به دولوپرا کمک کنه، تا تصمیمات بهتری در مورد انتخاب ابزارها و تکنولوژیها برای پروژههاشون بگیرن. پس پیشنهاد میکنم حتما یه سر به سایتش بزنید.
Website
#javascript
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12⚡3
دورهمی های کدماژول، قسمت ششم
موضوع: مهاجرت کاری به عنوان دولوپر (پارت دوم)🪐
مهمان گفتگو: جناب آقای مهدی شریفی
امشب ساعت 10 این گفتگو و دورهمی رو از دست ندید(لینک میت رأس ساعت قرار میگیره)
@CodeModule
موضوع: مهاجرت کاری به عنوان دولوپر (پارت دوم)
مهمان گفتگو: جناب آقای مهدی شریفی
برنامه نویسی یکی از پردرآمدترین و پرتقاضاترین شغلها در سراسر دنیا هست. به همین دلیل یک برنامه نویس حرفهای با رزومهی قدرتمند، برای مهاجرت موقعیتهای بسیار خوبی در اختیار خواهد داشت. اما مهاجرت چقدر میتونه سخت باشه؟ چه زمان میتونیم مهاجرت کنیم و از چه طریق؟ همه این سوالات رو داخل میتینگ امشب، بررسی میکنیم.
امشب ساعت 10 این گفتگو و دورهمی رو از دست ندید(لینک میت رأس ساعت قرار میگیره)
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11❤🔥5⚡3
Think_Like_a_Programmer_An_Introduction_to_Creative_Problem_Solving.pdf
3.8 MB
فکر کردن مثل یک برنامه نویس ! ⚙
اصلی ترین تفاوت بین دولوپرای عادی و حرفهای جدا از مهارت فنی، ذهنیتشون هست. اینکه چقدر یک برنامهنویس میتونه فرآیند تجزیه و تحلیل مسأله رو به خوبی انجام بده و به اصطلاح، الگوریتمیک فکر کنه.
🔵 این کتاب بهتون کمک میکنه که چطور مثل یک برنامهنویس واقعی فکر کنید، و بهتون پیشنهاد میکنم حتما بخونیدش.
✍️ نویسنده : V. Anton Spraul
#programming #book
@CodeModule
اصلی ترین تفاوت بین دولوپرای عادی و حرفهای جدا از مهارت فنی، ذهنیتشون هست. اینکه چقدر یک برنامهنویس میتونه فرآیند تجزیه و تحلیل مسأله رو به خوبی انجام بده و به اصطلاح، الگوریتمیک فکر کنه.
#programming #book
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
👌15🔥2
تست سیستم چیه؟ 🤔
تست سیستم که با عنوانین system-level یا system integration هم شناخته میشه، مرحله مهمی در چرخه عمر توسعه نرم افزار هست.
این تست فراتر از تأیید ویژگی های فردی و یک تکنیک بلک باکس هست، به این معنی که تستر ها بر روی عملکرد برنامه از دیدگاه کاربر تمرکز میکنن، نه روی عملکرد پیچیده داخلی (که محدوده آزمایش جعبه سفید هست). هدفش هم اطمینان از اینکه هر نوع ورودی کاربر نتیجه مورد انتظار رو در کل برنامه ایجاد میکنه، هست.
برای اینکه بهتر درکش کنید به این موضوع فکر کنید.
تست سیستم مانند آزمایش تمام چرخ دنده ها در یک ماشین پیچیده هست، که جواب این سوالات رو باید بده: آیا اونا به طور یکپارچه به هم متصل میشن تا خروجی مورد نظر رو ایجاد کنن؟ این فرآیند سخت معمولاً پس از integration testing هست، جایی که ماژول های جداگانه برای سازگاری تست میشن، و قبل از acceptance testing هست.
اما این تست بسیار شبیه به تست E2E هست. اما قبل از اینکه مقایسه کنیم، باید اول بدونیم تست E2E چیه!
در توسعه نرمافزار "end-to-end" (E2E)" نشون دهنده یک رویکرد جامع هست که یک سیستم یا برنامه رو از ابتدا تا انتها، ارزیابی میکنه و تجربه یک کاربر واقعی رو تقلید میکنه. تصور کنید کاربری وارد شده، منوها رو مرور میکنه، اقدامات خاصی رو انجام میده و نتیجه دلخواه رو دریافت میکنه. تست E2E با دقت تمام این حرکات کاربر رو تکرار میکنه و اطمینان میده که تمام اجزای متصل به هم به طور یکپارچه برای ارائه عملکرد مورد انتظار با یکدیگر همکاری میکنن.
اگه بخوام تفاوت این دو تست رو خلاصه بگم:
1⃣ تست سیستم بر بررسی نحوه عملکرد بخشهای جداگانه برنامه مثل چرخ دندههای روغنکاری شده با هم تمرکز داره، درحالی که تست E2E کل ماشین رو بررسی میکنه که آیا تجربه کاربری روان رو در همه عملکردها ارائه میده یا خیر.
2⃣ تست سیستم مثل اینه که از اعضای یک تیم اطمینان حاصل میکنیم که قطعات خود رو به درستی تنظیم کردن و استفاده میکنن. تست E2E بالاتر از همشونه و تضمین میکنه که کل اعضا با هم جمع میشن تا یک اجرای هماهنگ و تاثیرگذار برای مخاطبشون ایجاد کنن.
به صورت کلی این تست یکی از تست هایی هست که بنظر من خیلی مهمه و میتونیم با استفاده ازش، از سلامت و کیفیت اپلیکیشنمون اطمینان بیشتری حاصل کنیم.
برای کسب اطلاعات بیشتر به مقالات زیر مراجعه کنید (مخصوصا دومی)
- Article
- Article
- Article
#test #system_test
@CodeModule
تست سیستم که با عنوانین system-level یا system integration هم شناخته میشه، مرحله مهمی در چرخه عمر توسعه نرم افزار هست.
این تست فراتر از تأیید ویژگی های فردی و یک تکنیک بلک باکس هست، به این معنی که تستر ها بر روی عملکرد برنامه از دیدگاه کاربر تمرکز میکنن، نه روی عملکرد پیچیده داخلی (که محدوده آزمایش جعبه سفید هست). هدفش هم اطمینان از اینکه هر نوع ورودی کاربر نتیجه مورد انتظار رو در کل برنامه ایجاد میکنه، هست.
برای اینکه بهتر درکش کنید به این موضوع فکر کنید.
تست سیستم مانند آزمایش تمام چرخ دنده ها در یک ماشین پیچیده هست، که جواب این سوالات رو باید بده: آیا اونا به طور یکپارچه به هم متصل میشن تا خروجی مورد نظر رو ایجاد کنن؟ این فرآیند سخت معمولاً پس از integration testing هست، جایی که ماژول های جداگانه برای سازگاری تست میشن، و قبل از acceptance testing هست.
اما این تست بسیار شبیه به تست E2E هست. اما قبل از اینکه مقایسه کنیم، باید اول بدونیم تست E2E چیه!
در توسعه نرمافزار "end-to-end" (E2E)" نشون دهنده یک رویکرد جامع هست که یک سیستم یا برنامه رو از ابتدا تا انتها، ارزیابی میکنه و تجربه یک کاربر واقعی رو تقلید میکنه. تصور کنید کاربری وارد شده، منوها رو مرور میکنه، اقدامات خاصی رو انجام میده و نتیجه دلخواه رو دریافت میکنه. تست E2E با دقت تمام این حرکات کاربر رو تکرار میکنه و اطمینان میده که تمام اجزای متصل به هم به طور یکپارچه برای ارائه عملکرد مورد انتظار با یکدیگر همکاری میکنن.
اگه بخوام تفاوت این دو تست رو خلاصه بگم:
به صورت کلی این تست یکی از تست هایی هست که بنظر من خیلی مهمه و میتونیم با استفاده ازش، از سلامت و کیفیت اپلیکیشنمون اطمینان بیشتری حاصل کنیم.
برای کسب اطلاعات بیشتر به مقالات زیر مراجعه کنید (مخصوصا دومی)
- Article
- Article
- Article
#test #system_test
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡9🔥5
مروری بر روانشناسی رنگها 🖼️
رنگها یکی از مهمترین المانهایی هستن که میتونن باعث جذب مخاطب بشن و ما به عنوان دولوپر، بهتره اطلاعاتی راجبشون داشته باشیم. دلیل این حرف هم اینه که ممکنه تو برخی از پروژه ها دیزاینر نداشته باشیم و نحوه دیزاین و خلاقیت به عهده خود دولوپر باشه.
⚪ سفید: از نظر علمی رنگ سفید نمایانگر روشناییه و میتونه چشمان انسان رو به خودش جلب کنه. در زمینه تجارت هم رنگ سفید نمایانگر برابری و عدالته. استفاده گسترده از رنگ سفید، یکی از ویژگیهای طراحی قدرتمند هست.
🔴 قرمز: رنگ قرمز میتونه نمادی از بالارفتن ضربان قلب و میزان دم و باز دم باشه. رنگ قرمز شدت توجه و اشتها رو تحریک می کنه. همچنین قرمز فوریت رو نشان میده، مثلا برای اعلام حراج، یا ایجاد انگیزه برای خریدهای فوری.
🔴 صورتی: صورتی یکی از آرام و ملایمترین و درعینحال متناقضترین رنگها هست. این رنگ موجب آرامش و آسایش میشه.
🔵 آبی: سایههایی نرمی از رنگ آبی میتونه باعث آرامش و اعتماد باشه. اما درست برعکس در حالت پر رنگ میتونه تاثیر هیجانی روی ذهن داشته باشه. رنگ آبی میتونه حالت فکر کردن رو بهتر نشون بده.
🟢 سبز: رنگ سبز طبیعت رو به یادمون میاره و احساس صلح، امید، اعتماد و آرامش رو در ما ایجاد میکنه. این رنگ در میان برند های مربوط با محیط زیست، صنایع غذایی، کالاهای خانگی، تکنولوژی و امور مالی محبوب تر هست و باعث آرامش میشه.
🟡 زرد: رنگ زرد رنگیه که میتونه جلب توجه کنه. زرد نشوندهنده نیروی جوانی، شادابی و خوشبینی هست و عموما برای جلب رضایت مشتری استفاده میشه.
🟠 نارنجی: نارنجی برای تحریک هیجان و شور و شوق مفیده. نارنجی میتونه تاثیرگذار و راهی برای برقراری ارتباط باشه. با اینکه این رنگ کمتر از قرمز استفاده میشه، اما همچنان یک پانچ پر انرژی داره.
🟣 بنفش: بنفش ثروت رو بدنبال داره. این مورد میتونه حس تفکر و ذهنیت رو شبیه سازی کنه. بنفش تلفیقی از آبی و انرژی رنگ قرمزه و فعالیت های مغزی رو که در رابطه با حل کردن مشکل هست، فعال می کنه.
🟤 قهوهای: قهوهای مضمون آرامش و صلح ، سازگاری، اعتبار و حتی حس خستگی رو القا میکنه. قهوهای کاربردهای گوناگونی در سایت داره مثلاً برای بکگراند طرح، بهعنوان رنگ تأکید کننده و برای رنگ متون استفاده میشه.
⚫ سیاه: قدرت و سلطه همواره همراه با رنگ سیاه میاد. رنگ سیاه میتونه در طراحی سایت باعث به وجود آوردن حس تفاوت و خاص بودن، تجملات و زرق و برق بشه.
در کل وقتی وبسایتتون رو طراحی میکنید، رنگها نباید یک بحث خودسرانه باشه. در صورتی که انتخاب کردن رنگها با دقت انجام بشه، میتونیم بهتر جذب مخاطب کنیم و پیشرفت سریع تری داشته باشیم.
#colors
@CodeModule
رنگها یکی از مهمترین المانهایی هستن که میتونن باعث جذب مخاطب بشن و ما به عنوان دولوپر، بهتره اطلاعاتی راجبشون داشته باشیم. دلیل این حرف هم اینه که ممکنه تو برخی از پروژه ها دیزاینر نداشته باشیم و نحوه دیزاین و خلاقیت به عهده خود دولوپر باشه.
⚪ سفید: از نظر علمی رنگ سفید نمایانگر روشناییه و میتونه چشمان انسان رو به خودش جلب کنه. در زمینه تجارت هم رنگ سفید نمایانگر برابری و عدالته. استفاده گسترده از رنگ سفید، یکی از ویژگیهای طراحی قدرتمند هست.
🔴 قرمز: رنگ قرمز میتونه نمادی از بالارفتن ضربان قلب و میزان دم و باز دم باشه. رنگ قرمز شدت توجه و اشتها رو تحریک می کنه. همچنین قرمز فوریت رو نشان میده، مثلا برای اعلام حراج، یا ایجاد انگیزه برای خریدهای فوری.
🔵 آبی: سایههایی نرمی از رنگ آبی میتونه باعث آرامش و اعتماد باشه. اما درست برعکس در حالت پر رنگ میتونه تاثیر هیجانی روی ذهن داشته باشه. رنگ آبی میتونه حالت فکر کردن رو بهتر نشون بده.
🟢 سبز: رنگ سبز طبیعت رو به یادمون میاره و احساس صلح، امید، اعتماد و آرامش رو در ما ایجاد میکنه. این رنگ در میان برند های مربوط با محیط زیست، صنایع غذایی، کالاهای خانگی، تکنولوژی و امور مالی محبوب تر هست و باعث آرامش میشه.
🟡 زرد: رنگ زرد رنگیه که میتونه جلب توجه کنه. زرد نشوندهنده نیروی جوانی، شادابی و خوشبینی هست و عموما برای جلب رضایت مشتری استفاده میشه.
🟠 نارنجی: نارنجی برای تحریک هیجان و شور و شوق مفیده. نارنجی میتونه تاثیرگذار و راهی برای برقراری ارتباط باشه. با اینکه این رنگ کمتر از قرمز استفاده میشه، اما همچنان یک پانچ پر انرژی داره.
🟣 بنفش: بنفش ثروت رو بدنبال داره. این مورد میتونه حس تفکر و ذهنیت رو شبیه سازی کنه. بنفش تلفیقی از آبی و انرژی رنگ قرمزه و فعالیت های مغزی رو که در رابطه با حل کردن مشکل هست، فعال می کنه.
🟤 قهوهای: قهوهای مضمون آرامش و صلح ، سازگاری، اعتبار و حتی حس خستگی رو القا میکنه. قهوهای کاربردهای گوناگونی در سایت داره مثلاً برای بکگراند طرح، بهعنوان رنگ تأکید کننده و برای رنگ متون استفاده میشه.
⚫ سیاه: قدرت و سلطه همواره همراه با رنگ سیاه میاد. رنگ سیاه میتونه در طراحی سایت باعث به وجود آوردن حس تفاوت و خاص بودن، تجملات و زرق و برق بشه.
در کل وقتی وبسایتتون رو طراحی میکنید، رنگها نباید یک بحث خودسرانه باشه. در صورتی که انتخاب کردن رنگها با دقت انجام بشه، میتونیم بهتر جذب مخاطب کنیم و پیشرفت سریع تری داشته باشیم.
#colors
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17⚡3
امتیازات یادگیری docker برای فرانت دولوپر ها 🙋♂️
همونطور که داخل میتینگ سفر در رودمپ فرانت اند صحبت کردیم، یادگیری docker یک مهارت اجباری برای رودمپ فرانت اند نیست، اما یادگیری اون امتیازات و مزایایی برای فرانت دولوپر داره که میتونه هم داخل استخدام، هم داخل فرایند توسعه نرم افزار بهش کمک بکنه.
✅ در این پست میخوایم به این امتیازات و مزایا بپردازیم و برسیشون کنیم:
1️⃣ محیطهای توسعه یکسان: داکر به شما این امکان رو میده که محیطهای توسعه، تست و تولید رو یکسان کنید. این موضوع باعث کاهش مشکلات ناشی از "کار روی ماشین" میشه.
2️⃣ جداسازی دپندنسی ها: با استفاده از داکر، میتونید وابستگیهای پروژههای مختلف رو جدا کنید. این موضوع به جلوگیری از تداخل نسخهها و مشکلات مشابه روی پروژه کمک میکنه.
3️⃣ آسانی در دیپلوی: با ایجاد کانتینرهای داکر، میتونید به راحتی پروژه هاتون رو در محیطهای مختلف دیپلوی کنید، بدون نگرانی از مشکلات محیطی.
4️⃣ توسعهی سریعتر: داکر به شما این امکان رو میده که به سرعت محیطهای جدیدی رو برای تست ویژگیهای جدید ایجاد کنید و به راحتی اونارو حذف کنید.
5️⃣ مدیریت آسانتر: با استفاده از داکر، میتونید پروژه هاتون رو به راحتی مدیریت کنید و به سادگی اونارو آپدیت یا scalable کنید.
6️⃣ همکاری بهتر: داکر میتونه به تیمها کمک کنه تا به راحتی با هم همکاری کنن، چون همه اعضای تیم میتونن از یک محیط یکسان استفاده کنن.
7️⃣ امکان استفاده از CI/CD: داکر به راحتی با ابزارهای CI/CD ادغام میشه، که میتونه باعث تسریع در فرآیند توسعه و استقرار بشه.
8️⃣ تاثیر امتیازی در رزومه :وجود داکر در رزومه شما میتونه نشون دهنده فعال بودنتون در صنعت نرم افزار، به صورت تخصصی تر باشه که از دیدگاه شرکت ها و کارفرما ها میتونه یک مثبت به رزومه شما اضافه کنه.
با توجه به این مزایا، یادگیری داکر برای فرانتاند دولوپرها میتونه یک سرمایهگذاری ارزشمند باشه که به افزایش کارایی و کیفیت کار کمک میکنه🏖️
#docker #frontend
@CodeModule
همونطور که داخل میتینگ سفر در رودمپ فرانت اند صحبت کردیم، یادگیری docker یک مهارت اجباری برای رودمپ فرانت اند نیست، اما یادگیری اون امتیازات و مزایایی برای فرانت دولوپر داره که میتونه هم داخل استخدام، هم داخل فرایند توسعه نرم افزار بهش کمک بکنه.
با توجه به این مزایا، یادگیری داکر برای فرانتاند دولوپرها میتونه یک سرمایهگذاری ارزشمند باشه که به افزایش کارایی و کیفیت کار کمک میکنه
#docker #frontend
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👌3⚡2
با WunderGraph تازه نفس آشنا بشید! 🪐
WunderGraph یک پکیج تقریبا جدیده که فرآیند ساخت برنامه های فول استک رو با API های قدرتمند ساده میکنه. این پکیج یک راه حل همه کاره برای مدیریت API های بک اند و ادغام کردنشون با front-end، ارائه میده. WunderGraph از فناوریهایی مثل GraphQL REST و gRPC استفاده میکنه.
از این پکیج چه استفاده ای میشه؟
WunderGraph برای کمک به دولوپر ها طراحی شده تا برنامه های مدرن رو به سرعت و کارآمد ایجاد کنن. بسیاری از جنبه های مدیریت API از جمله ساخت اسکیما و احراز هویت رو خودکار میکنه. با WunderGraph دولوپر ها میتونن بدون زحمت چندین API رو ادغام کنن و همچنین این پکیج از real-time data پشتیبانی میکنه.
یکی از ویژگیهای برجسته WunderGraph، توانایی اون در تولید TypeScript SDK برای برنامههای فرانت هست که type-safty رو تضمین میکنه و خطر ارور های رانتایم رو کاهش میده. همچنین یک API Gateway داخلی ارائه میکنه که امنیت، محدودیت و سایر نگرانیها رو مدیریت میکنه.
WunderGraph یک ابزار قدرتمند برای دولوپر های Node.js هست که به دنبال ساخت برنامه های قوی و مقیاس پذیر هستن. WunderGraph با سادهسازی پیچیدگیها، یکپارچهسازی و مدیریت API، به دولوپر ها این امکان رو میده تا با حفظ استانداردهای بالا امنیت و عملکرد، روند توسعه خود رو تسریع ببخشن. برای کسب اطلاعات بیشتر به داکیومنتش مراجعه کنید.
#wundergraph
@CodeModule
WunderGraph یک پکیج تقریبا جدیده که فرآیند ساخت برنامه های فول استک رو با API های قدرتمند ساده میکنه. این پکیج یک راه حل همه کاره برای مدیریت API های بک اند و ادغام کردنشون با front-end، ارائه میده. WunderGraph از فناوریهایی مثل GraphQL REST و gRPC استفاده میکنه.
از این پکیج چه استفاده ای میشه؟
WunderGraph برای کمک به دولوپر ها طراحی شده تا برنامه های مدرن رو به سرعت و کارآمد ایجاد کنن. بسیاری از جنبه های مدیریت API از جمله ساخت اسکیما و احراز هویت رو خودکار میکنه. با WunderGraph دولوپر ها میتونن بدون زحمت چندین API رو ادغام کنن و همچنین این پکیج از real-time data پشتیبانی میکنه.
یکی از ویژگیهای برجسته WunderGraph، توانایی اون در تولید TypeScript SDK برای برنامههای فرانت هست که type-safty رو تضمین میکنه و خطر ارور های رانتایم رو کاهش میده. همچنین یک API Gateway داخلی ارائه میکنه که امنیت، محدودیت و سایر نگرانیها رو مدیریت میکنه.
WunderGraph یک ابزار قدرتمند برای دولوپر های Node.js هست که به دنبال ساخت برنامه های قوی و مقیاس پذیر هستن. WunderGraph با سادهسازی پیچیدگیها، یکپارچهسازی و مدیریت API، به دولوپر ها این امکان رو میده تا با حفظ استانداردهای بالا امنیت و عملکرد، روند توسعه خود رو تسریع ببخشن. برای کسب اطلاعات بیشتر به داکیومنتش مراجعه کنید.
#wundergraph
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11💔1
دنبال نمونه پروژه برای تمرینی؟ 🤔
ریپازیتوری 50projects50days مجموعهای از ۵۰ پروژهی کوچیک و کاربردیه که به منظور تمرین و تقویت مهارتهای HTML، CSS و JavaScript طراحی شده. پیشنهاد میکنم حتما یه سر بزنید.
🌐 Repository
#repository
@CodeModule
ریپازیتوری 50projects50days مجموعهای از ۵۰ پروژهی کوچیک و کاربردیه که به منظور تمرین و تقویت مهارتهای HTML، CSS و JavaScript طراحی شده. پیشنهاد میکنم حتما یه سر بزنید.
#repository
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - bradtraversy/50projects50days: 50+ mini web projects using HTML, CSS & JS
50+ mini web projects using HTML, CSS & JS. Contribute to bradtraversy/50projects50days development by creating an account on GitHub.
🔥12😁2
با رقیب جدید Next.js آشنا بشید! 💀
در بین فریمورک های توانمند جهت توسعه پروژه های فول استک، RedwoodJS به عنوان یک فریمورک نسبتا جدید و با یک چارچوب منسجم، شکاف بین بک اند و فرانت اند رو کمتر میکنه. RedwoodJS که با تمرکز بر تجربه و بهرهوری دولوپر ها توسعه داده شده، بهطور یکپارچه با فناوریهای محبوبی مثل React، GraphQL و Prisma ترکیب میشه تا توسعه پروژه هارو سادهتر کنه.
ویژگی های محبوب این فریمورک چیه؟
1⃣ یکپارچه سازی Full-Stack: یک ساختار "monorepo" رو ارائه میده که هم کد فرانت اند و هم کد بک اند رو در یک ریپازیتوری واحد نگه میداره. این رویکرد استقرار و نسخهسازی رو ساده میکنه و در عین حال یکپارچگی در سراسر برنامه رو تشویق میکنه.
2⃣ GraphQL API: این فریمورک از GraphQL برای query و دستکاری داده ها استفاده میکنه که امکان تعامل داده های انعطاف پذیر و کارآمد رو، فراهم میکنه. این با پشتیبانی داخلی Redwood برای تولید و مدیریت اسکیما های GraphQL تکمیل میشه.
3⃣ Prisma ORM: برای مدیریت دیتابیس، Prisma رو یکپارچه میکنه.
به صورت کلی RedwoodJS به عنوان یک فریمورک قدرتمند برای دولوپر هایی که به دنبال ساده سازی توسعه full-stack هستن، با تأکید بر بهره وری و قابلیت نگهداری برجسته هست. با ترکیب React، GraphQL و Prisma در یک بسته منسجم، فرآیند توسعه رو ساده کرده و از بهترین شیوه ها استفاده میکنه. برای کسب اطلاعات بیشتر به داکیومنتش مراجعه کنید.
#redwoodjs
@CodeModule
در بین فریمورک های توانمند جهت توسعه پروژه های فول استک، RedwoodJS به عنوان یک فریمورک نسبتا جدید و با یک چارچوب منسجم، شکاف بین بک اند و فرانت اند رو کمتر میکنه. RedwoodJS که با تمرکز بر تجربه و بهرهوری دولوپر ها توسعه داده شده، بهطور یکپارچه با فناوریهای محبوبی مثل React، GraphQL و Prisma ترکیب میشه تا توسعه پروژه هارو سادهتر کنه.
ویژگی های محبوب این فریمورک چیه؟
به صورت کلی RedwoodJS به عنوان یک فریمورک قدرتمند برای دولوپر هایی که به دنبال ساده سازی توسعه full-stack هستن، با تأکید بر بهره وری و قابلیت نگهداری برجسته هست. با ترکیب React، GraphQL و Prisma در یک بسته منسجم، فرآیند توسعه رو ساده کرده و از بهترین شیوه ها استفاده میکنه. برای کسب اطلاعات بیشتر به داکیومنتش مراجعه کنید.
#redwoodjs
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12⚡2