میکرومستر مهندسی نرمافزار
هدف
هدف از این میکرومستر آموزش و آمادهسازی دانشپذیران برای ورود به بازار کار به عنوان مهندس نرمافزار است. محتوای میکرومستر با توجه به نیازهای مطرح شده توسط مهمترین شرکتهای کشور تهیه شده است.
مخاطبین
افرادی که علاقهمند به ارتقاء سطح کاری و دانش خود هستند.
دانشآموزان و دانشجویانی که علاقهمند به آمادگی برای ورود به بازار کار در آینده هستند.
افرادی که علاقهمند به ارتقاء سطح دانشی خود در حوزه مهندسی نرمافزار هستند.
https://micro.ce.sharif.edu/sw
هدف
هدف از این میکرومستر آموزش و آمادهسازی دانشپذیران برای ورود به بازار کار به عنوان مهندس نرمافزار است. محتوای میکرومستر با توجه به نیازهای مطرح شده توسط مهمترین شرکتهای کشور تهیه شده است.
مخاطبین
افرادی که علاقهمند به ارتقاء سطح کاری و دانش خود هستند.
دانشآموزان و دانشجویانی که علاقهمند به آمادگی برای ورود به بازار کار در آینده هستند.
افرادی که علاقهمند به ارتقاء سطح دانشی خود در حوزه مهندسی نرمافزار هستند.
https://micro.ce.sharif.edu/sw
docker system df -v
- check the disk usage of all Docker resources
docker volume prune
- This will remove all volumes not currently used by a container.
- check the disk usage of all Docker resources
docker volume prune
- This will remove all volumes not currently used by a container.
https://core.telegram.org/method/auth.sendcode
در برنامه های موبایل بسیار دیده اید که از طرف سرور یک کد برای شما اس ام اس میشود، اگر بخواهید برای این منظور یک api طراحی کنید (با نام فرضی sendCode) چگونه این کار را انجام میدهید؟
به طور مثال تلگرام برای این منظور یک api به نام sendCode دارد که در آن شماره تلفن برای سرور ارسال میشود در پاسخ آن یک
hashCode
ارسال خواهد شد. که پس از دریافت اس ام اس، کد دریافت شده در اس ام اس و شماره تلفنن به همراه
hashcode
برای ورود به سیستم استفاده خواهد شد
چرا hashcode لازم است؟
در برنامه های موبایل بسیار دیده اید که از طرف سرور یک کد برای شما اس ام اس میشود، اگر بخواهید برای این منظور یک api طراحی کنید (با نام فرضی sendCode) چگونه این کار را انجام میدهید؟
به طور مثال تلگرام برای این منظور یک api به نام sendCode دارد که در آن شماره تلفن برای سرور ارسال میشود در پاسخ آن یک
hashCode
ارسال خواهد شد. که پس از دریافت اس ام اس، کد دریافت شده در اس ام اس و شماره تلفنن به همراه
hashcode
برای ورود به سیستم استفاده خواهد شد
چرا hashcode لازم است؟
core.telegram.org
auth.sendCode
Send the verification code for login
Web_programming
distributed LRU cache — example: caching immutable file blobs for dl.google.com — https://github.com/golang/groupcache — https://capotej.com/blog/2013/07/28/playing-with-groupcache/
برنامه ساده کوچک و مناسب برای یادگیری پیاده سازی سیستمهای توزیع شده. اگر من بخواهم یک آموزش برای توسعه این سیستمها داشته باشم با تحلیل کد این منبع کار را شروع میکنم
خواندن و فهمیدن آن را برای علاقهمندان توصیه میکنم به ویژه که در پروژه واقعی نیز استفاده شده است
خواندن و فهمیدن آن را برای علاقهمندان توصیه میکنم به ویژه که در پروژه واقعی نیز استفاده شده است
Forwarded from Web_programming
فرض کنید در یک برنامه از کاربر نام و رمز را دریافت می کنید و در صورت درستی وارد برنامه می شوید. مراحل این کار معمولا بدین شکل است:
۱- نام کاربری را وارد کنید
۲- رمز عبور را وارد کنید
۳- رمز وارد شده توسط کاربر را رمزنگاری میکنید
۴- حاصل رمزنگاری مرحله ۳ را با رمز ذخیره شده و رمزنگاری شده (درون پایگاه داده و یا هر جایی که فیلا دخیره کرده اید) مقایسه می کنید و اگر درست بود ادامه ....
۴- اگر نادرست بود به تعداد محدودی اجازه وارد کردن رمز را می دهید و مثلا پس از ۳ تلاش برای مدت ۱ ساعت در لیست سیاه قرار می گیرد
و....
این الگوریتم نیز در دو شرایط ممکن است مخاطرات امنیتی داشته باشد! و بهتر است پس از دریافت رمز از کاربر بدین شکل عمل کنید
۱- مانند قبل
۲- مانند قیل
۳- رمزنگاری رمز گرفته شده در مرحله دو
۴- مرحله بسیار مهم —> پاک کردن رمز گرفته شده در مرحله دو از حافظه
۵- ادامه مانند قبل
چرا؟
۱- ممکن است برنامه crash کند و یک dump فایل برای ان بوجود آید و رمز وارد شده توسط کاربر بدین شکل expose میشود
۲- در شرایط swap کردن توسط سیستم عامل امکان expose شدن رمز کاربر نیز وجود دارد
حالا واقعا باید اینقدر سخت بگیریم؟ بله :)
در لینک زیر خیلی مختصر یک برنامه نمونه آورده ام از کتاب برنامه نویسی لینوکس که قبلا معرفی کردم
https://telegra.ph/Erase-the-unencrypted-password-from-memory-11-27
۱- نام کاربری را وارد کنید
۲- رمز عبور را وارد کنید
۳- رمز وارد شده توسط کاربر را رمزنگاری میکنید
۴- حاصل رمزنگاری مرحله ۳ را با رمز ذخیره شده و رمزنگاری شده (درون پایگاه داده و یا هر جایی که فیلا دخیره کرده اید) مقایسه می کنید و اگر درست بود ادامه ....
۴- اگر نادرست بود به تعداد محدودی اجازه وارد کردن رمز را می دهید و مثلا پس از ۳ تلاش برای مدت ۱ ساعت در لیست سیاه قرار می گیرد
و....
این الگوریتم نیز در دو شرایط ممکن است مخاطرات امنیتی داشته باشد! و بهتر است پس از دریافت رمز از کاربر بدین شکل عمل کنید
۱- مانند قبل
۲- مانند قیل
۳- رمزنگاری رمز گرفته شده در مرحله دو
۴- مرحله بسیار مهم —> پاک کردن رمز گرفته شده در مرحله دو از حافظه
۵- ادامه مانند قبل
چرا؟
۱- ممکن است برنامه crash کند و یک dump فایل برای ان بوجود آید و رمز وارد شده توسط کاربر بدین شکل expose میشود
۲- در شرایط swap کردن توسط سیستم عامل امکان expose شدن رمز کاربر نیز وجود دارد
حالا واقعا باید اینقدر سخت بگیریم؟ بله :)
در لینک زیر خیلی مختصر یک برنامه نمونه آورده ام از کتاب برنامه نویسی لینوکس که قبلا معرفی کردم
https://telegra.ph/Erase-the-unencrypted-password-from-memory-11-27
Telegraph
Erase the unencrypted password from memory
The Password File: /etc/passwd The system password file, /etc/passwd , contains one line for each user account on the system. Each line is composed of seven fields separated by colons ( : )
Forwarded from Mahdi Khoshdell
سوالم شاید یکم پایه ای و ساده باشه به بزرگی خودتون ببخشید:)))
قضیه اینه که یه اپ iot core داریم و یه تعداد زیادی دیوایس که از influxdb برای ذخیره دیتا هایی که از سمت دیوایس ها میان استفاده میکنیم.
حالا مشکلی که وجود داره اینه که کلا کوئری هایی که روی influx میزنیم خیلی کنده و بعضا ممکنه چن ثانیه طول بکشه به خصوص اینکه بعضی از سنسور ها هستن که چنتا اتریبیوتو همزمان با هم اندازه میگیرن ( مثلا یه مولتی سنسور داریم که شاید ۱۰ تا اتریبیوت مختلفو اندازه گیری کنه)
حالا سوال من اینه که best practice ذخیره دیتا برای همچین پروژه ای چجوریه که بخوایم کوئری های مختلف بزنیم و نسبتا سریع انجام بشن؟
قضیه اینه که یه اپ iot core داریم و یه تعداد زیادی دیوایس که از influxdb برای ذخیره دیتا هایی که از سمت دیوایس ها میان استفاده میکنیم.
حالا مشکلی که وجود داره اینه که کلا کوئری هایی که روی influx میزنیم خیلی کنده و بعضا ممکنه چن ثانیه طول بکشه به خصوص اینکه بعضی از سنسور ها هستن که چنتا اتریبیوتو همزمان با هم اندازه میگیرن ( مثلا یه مولتی سنسور داریم که شاید ۱۰ تا اتریبیوت مختلفو اندازه گیری کنه)
حالا سوال من اینه که best practice ذخیره دیتا برای همچین پروژه ای چجوریه که بخوایم کوئری های مختلف بزنیم و نسبتا سریع انجام بشن؟
Web_programming
سوالم شاید یکم پایه ای و ساده باشه به بزرگی خودتون ببخشید:))) قضیه اینه که یه اپ iot core داریم و یه تعداد زیادی دیوایس که از influxdb برای ذخیره دیتا هایی که از سمت دیوایس ها میان استفاده میکنیم. حالا مشکلی که وجود داره اینه که کلا کوئری هایی که روی influx…
جنس کویری ها ترنز اکشنال هست یا انالیتیکال؟
به نظرم یه دیتابیس OLAP مدرن مول clickhouse با کانفیگ خوب میتونه راه حل خوبی باشه
به نظرم یه دیتابیس OLAP مدرن مول clickhouse با کانفیگ خوب میتونه راه حل خوبی باشه
#spring_boot
جریان مدیریت درخواست ها و آماده سازی پاسخ در فریم ورک Spring Boot
فریم ورک Spring Boot با به کارگیری بخشی به نام Dispatcher Servlet میتواند درخواست دریافتی را به Handler مناسب بسپارد و پاسخ را دریافت کرده و ارسال کند (بسیار شبیه به آنچه که در الگوی طراحی Mediator دیده میشود). این کار یکی از مزایای این فریم ورک را نسبت به نسخه سنتی آن - Java EE - فراهم میکند و ما را از نوشتن سرولت های متعدد راحت میکند.
مهم ترین الگوهای طراحی که به چشم میخورند : Mediator و Adaptor
برای توضیحات بیشتر، بررسی مطلب زیر پیشنهاد میشود.
https://medium.com/@lakshyachampion/the-dispatcherservlet-the-engine-of-request-handling-in-spring-boot-3a85c2bdbe6b
جریان مدیریت درخواست ها و آماده سازی پاسخ در فریم ورک Spring Boot
فریم ورک Spring Boot با به کارگیری بخشی به نام Dispatcher Servlet میتواند درخواست دریافتی را به Handler مناسب بسپارد و پاسخ را دریافت کرده و ارسال کند (بسیار شبیه به آنچه که در الگوی طراحی Mediator دیده میشود). این کار یکی از مزایای این فریم ورک را نسبت به نسخه سنتی آن - Java EE - فراهم میکند و ما را از نوشتن سرولت های متعدد راحت میکند.
مهم ترین الگوهای طراحی که به چشم میخورند : Mediator و Adaptor
برای توضیحات بیشتر، بررسی مطلب زیر پیشنهاد میشود.
https://medium.com/@lakshyachampion/the-dispatcherservlet-the-engine-of-request-handling-in-spring-boot-3a85c2bdbe6b
Forwarded from Quera
🔥 مسابقه برنامهنویسی ستارگان آینده گلرنگ
✨ قراره ستاره یکی از این جهانها بشی
✅ در ۲ مسیر Front-End و Back-End
🗓 جمعه، ۱۶ آذر ۱۴۰۳ ساعت ۱۶:۰۰
💠 نفرات برتر این مسابقه، به مدت یک ماه ونیم توی شرکتهای تکنولوژی محور تپسی، اکالا، زپ، گلرنگ سیستم، شب، اکتیو کلینرز و پاتوقی همراه با یک منتور با تجربه برنامهنویسی میکنند.
🌐 ثبتنام رایگان:
🔗 https://quera.org/r/ejo6l
〰️〰️〰️〰️
#Quera #Quera_Contest
✨ قراره ستاره یکی از این جهانها بشی
✅ در ۲ مسیر Front-End و Back-End
🗓 جمعه، ۱۶ آذر ۱۴۰۳ ساعت ۱۶:۰۰
💠 نفرات برتر این مسابقه، به مدت یک ماه ونیم توی شرکتهای تکنولوژی محور تپسی، اکالا، زپ، گلرنگ سیستم، شب، اکتیو کلینرز و پاتوقی همراه با یک منتور با تجربه برنامهنویسی میکنند.
🌐 ثبتنام رایگان:
🔗 https://quera.org/r/ejo6l
〰️〰️〰️〰️
#Quera #Quera_Contest
Forwarded from Reza Zeiny
#فرصتشغلی
💻 استخدام توسعه دهنده ارشد جاوا
senior java developer
📋شرح کلی شغل:
شرکت فناوری اطلاعات نیلوا با بهره گیری از تکنولوژی های به روز و توان نخبگان کشور در حوزه فناوری اطلاعات، همکاری های گسترده ای با شرکای تجاری خود دارد.
این مجموعه با توجه به پیشینه خود در زمینه ارائه راهکار به شرکت های مختلف و همکاری با 50 شرکت متفاوت، نیازمندی های آنها را مورد بررسی قرار داده و منطبق با نیاز داخل، بومی سازی کرده است. محصولات این شرکت طوری طراحی شده که ظرفیت صادرات را نیز دارد و در آینده نه چندان دور به این مهم دست پیدا خواهیم کرد.
نیلوا هم اکنون از واحدهای فناور عضو مرکز رشد پارک علم و فناوری شریف است و با شرکت ها و سازمان های شناخته شده ای مانند ایران خودرو، دانشگاه صنعتی شریف و همچنین با بسیاری از شرکت های خصوصی و شتاب دهنده ها فعالیت و همکاری دارد.
🛠 تواناییهای مورد نیاز:
🔹 حداقل 3 سال سابقه کار به عنوان Back-End Developer
🔹 تسلط بر Java، Spring، Spring Boot و REST API
🔹 تسلط بر مفاهیم OOP، java Core و J2EE
🔹 توسعه دهنده جاوا در بخش ماژول های کسب و کار
🔹 آشنایی با مفاهیم Object Oriented Design Patterns
🔹 درک کامل از برنامه نویسی شیء گرا
🔹 دانش عالی از پایگاه های داده رابطه ای، فناوری های ORACLE و JPA (Hibernate Implementation)
🔹تسلط بر الگوریتمها و بهینهسازی کد
🔹آشنایی با Design Patterns و شیوههای استفاده از آنها
🔹تجربه برنامهنویسی به سبک Async
🔹آشنایی با مفاهیم Caching و کار با Redis
⬅️از متقاضیان عزیز خواهشمند است #رزومه خود را به آیدی @rezazeiny ارسال نمایند.
لینک جاب ویژن برای فرصت های شغلی بیشتر اعم از توسعه دهنده Django یا توسعه دهنده ReactJS و NextJs
💻 استخدام توسعه دهنده ارشد جاوا
senior java developer
📋شرح کلی شغل:
شرکت فناوری اطلاعات نیلوا با بهره گیری از تکنولوژی های به روز و توان نخبگان کشور در حوزه فناوری اطلاعات، همکاری های گسترده ای با شرکای تجاری خود دارد.
این مجموعه با توجه به پیشینه خود در زمینه ارائه راهکار به شرکت های مختلف و همکاری با 50 شرکت متفاوت، نیازمندی های آنها را مورد بررسی قرار داده و منطبق با نیاز داخل، بومی سازی کرده است. محصولات این شرکت طوری طراحی شده که ظرفیت صادرات را نیز دارد و در آینده نه چندان دور به این مهم دست پیدا خواهیم کرد.
نیلوا هم اکنون از واحدهای فناور عضو مرکز رشد پارک علم و فناوری شریف است و با شرکت ها و سازمان های شناخته شده ای مانند ایران خودرو، دانشگاه صنعتی شریف و همچنین با بسیاری از شرکت های خصوصی و شتاب دهنده ها فعالیت و همکاری دارد.
🛠 تواناییهای مورد نیاز:
🔹 حداقل 3 سال سابقه کار به عنوان Back-End Developer
🔹 تسلط بر Java، Spring، Spring Boot و REST API
🔹 تسلط بر مفاهیم OOP، java Core و J2EE
🔹 توسعه دهنده جاوا در بخش ماژول های کسب و کار
🔹 آشنایی با مفاهیم Object Oriented Design Patterns
🔹 درک کامل از برنامه نویسی شیء گرا
🔹 دانش عالی از پایگاه های داده رابطه ای، فناوری های ORACLE و JPA (Hibernate Implementation)
🔹تسلط بر الگوریتمها و بهینهسازی کد
🔹آشنایی با Design Patterns و شیوههای استفاده از آنها
🔹تجربه برنامهنویسی به سبک Async
🔹آشنایی با مفاهیم Caching و کار با Redis
⬅️از متقاضیان عزیز خواهشمند است #رزومه خود را به آیدی @rezazeiny ارسال نمایند.
لینک جاب ویژن برای فرصت های شغلی بیشتر اعم از توسعه دهنده Django یا توسعه دهنده ReactJS و NextJs
jobvision.ir
استخدام پویا داده پرداز سلامت توس - آذر ۱۴۰۳ | جابویژن
آگهی های استخدام پویا داده پرداز سلامت توس - آذر ۱۴۰۳ در تهران و شهرستان ها،فرصت های شغلی استخدام پویا داده پرداز سلامت توس - آذر ۱۴۰۳ به صورت تمام وقت و پاره وقت
Spring Security Architecture.pdf
289.3 KB
#spring_boot #java
با سلام
یکی از بخش های اساسی فریم ورک Spring Boot ، بخش Spring Security هست که برای تامین امنیت و قابلیت احراز هویت ، مورد استفاده قرار میگیرد.
استفاده درست و به جا از قابلیت های Spring Security (که بخشی از معماری کلان Spring Boot است) مستلزم داشتن درک درست از ساختار و کارکرد کلی آن است.
در اینترنت مطالب زیادی در این خصوص وجود دارد. در بین این مطالب، این مقاله آموزشی کوتاه، میتواند در یافتن یک درک درست و خیلی کلی از Spring Security ارائه دهد و خواندن آن را پیشنهاد میکنم.
پ.ن : از نظرات و لینک های خوب در این خصوص نیز استقبال میشود.
با سلام
یکی از بخش های اساسی فریم ورک Spring Boot ، بخش Spring Security هست که برای تامین امنیت و قابلیت احراز هویت ، مورد استفاده قرار میگیرد.
استفاده درست و به جا از قابلیت های Spring Security (که بخشی از معماری کلان Spring Boot است) مستلزم داشتن درک درست از ساختار و کارکرد کلی آن است.
در اینترنت مطالب زیادی در این خصوص وجود دارد. در بین این مطالب، این مقاله آموزشی کوتاه، میتواند در یافتن یک درک درست و خیلی کلی از Spring Security ارائه دهد و خواندن آن را پیشنهاد میکنم.
پ.ن : از نظرات و لینک های خوب در این خصوص نیز استقبال میشود.
React.cloneElement
تا کنون از این تابع توی js استفاده کردهاید؟
مثالی از کاربرد در commentها
تا کنون از این تابع توی js استفاده کردهاید؟
مثالی از کاربرد در commentها
Forwarded from Quera
🥳 کوئراکالج با افتخار تقدیم میکند.
🌸 «کد پایلوت مبانی برنامهنویسی»
⚡️ با ثبتنام رایگان در این دوره میتونی تو زبانهای Python، C#، C++، C و Javascript تمرینهای مسئله محور حل کنی و مهارتت رو تقویت کنی؛ از طرفی میتونی خودت رو برای میانترم و امتحاناتت آماده کنی.
👍 لازمه...
علاقه و پشتکار داشته باشید.
👎 لازم نیست…
در رشتهی کامپیوتر تحصیل کرده باشید.
دانش ریاضی قوی داشته باشید.
✅ ثبتنام رایگان:
🔗 https://quera.org/r/73em6
🌸 «کد پایلوت مبانی برنامهنویسی»
⚡️ با ثبتنام رایگان در این دوره میتونی تو زبانهای Python، C#، C++، C و Javascript تمرینهای مسئله محور حل کنی و مهارتت رو تقویت کنی؛ از طرفی میتونی خودت رو برای میانترم و امتحاناتت آماده کنی.
👍 لازمه...
علاقه و پشتکار داشته باشید.
👎 لازم نیست…
در رشتهی کامپیوتر تحصیل کرده باشید.
دانش ریاضی قوی داشته باشید.
✅ ثبتنام رایگان:
🔗 https://quera.org/r/73em6