#گزارش_تصویری
🎓برگزاری همایش خوشامدگویی به مناسبت ورود دانشجویان نوورود به دانشکده
به همراه:
🔹سخنرانی مدیران گروه
🔹سخنرانی مسئول آموزش دانشکده
🔹موسیقی و پذیرایی
🔹سخنرانی دبیران انجمن های علمی
🔹تقدیر از دانشجویان برتر دانشکده
⏰دوشنبه ۲۱ آبان ماه
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🎓برگزاری همایش خوشامدگویی به مناسبت ورود دانشجویان نوورود به دانشکده
به همراه:
🔹سخنرانی مدیران گروه
🔹سخنرانی مسئول آموزش دانشکده
🔹موسیقی و پذیرایی
🔹سخنرانی دبیران انجمن های علمی
🔹تقدیر از دانشجویان برتر دانشکده
⏰دوشنبه ۲۱ آبان ماه
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🔥6👍2❤1
This media is not supported in your browser
VIEW IN TELEGRAM
✍️کشاورزی هوشمند و دقیق با هوش مصنوعی و ربات پرنده در چین
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🔥4❤1👍1
سیستم عامل اندروید با چه زبانهایی نوشته شده است؟ 📲
سیستمعامل اندروید، بهعنوان یک سیستمعامل متنباز مبتنی بر هسته لینوکس، با استفاده از زبانهای زیر توسعه داده شده است:
یک : C و C++: بخشهای اصلی و سیستمی اندروید، از جمله هسته (Kernel) که مبتنی بر لینوکس است، با استفاده از زبانهای C و C++ نوشته شدهاند. این زبانها برای توسعه بخشهای پایینی سیستمعامل که به سختافزار نزدیک هستند، بسیار مناسباند.
دو: Java: بسیاری از کتابخانهها و سرویسهای سطح بالای اندروید با جاوا نوشته شدهاند. همچنین محیط اجرای اپلیکیشنها (Android Runtime) و فریمورکهای مهم سیستمعامل با جاوا توسعه یافتهاند.
سه: Kotlin: اگرچه اندروید با کاتلین ساخته نشده، اما از زمانی که کاتلین به زبان رسمی اندروید تبدیل شد، برخی از کتابخانهها و ابزارهای جدیدتر نیز به این زبان نوشته شدهاند.
چهار: Bash و Python: برخی از ابزارهای مدیریت سیستم و اسکریپتهای سطح پایین در اندروید ممکن است با Bash یا Python نوشته شده باشند، اما این زبانها نقش اصلی در توسعه هسته و اجزای کلیدی ندارند.
بنابراین، هسته اصلی سیستمعامل اندروید با C و C++ نوشته شده است و بخشهای سطح بالاتر و بیشتر سرویسها و APIهای آن با Java توسعه یافتهاند.
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
سیستمعامل اندروید، بهعنوان یک سیستمعامل متنباز مبتنی بر هسته لینوکس، با استفاده از زبانهای زیر توسعه داده شده است:
یک : C و C++: بخشهای اصلی و سیستمی اندروید، از جمله هسته (Kernel) که مبتنی بر لینوکس است، با استفاده از زبانهای C و C++ نوشته شدهاند. این زبانها برای توسعه بخشهای پایینی سیستمعامل که به سختافزار نزدیک هستند، بسیار مناسباند.
دو: Java: بسیاری از کتابخانهها و سرویسهای سطح بالای اندروید با جاوا نوشته شدهاند. همچنین محیط اجرای اپلیکیشنها (Android Runtime) و فریمورکهای مهم سیستمعامل با جاوا توسعه یافتهاند.
سه: Kotlin: اگرچه اندروید با کاتلین ساخته نشده، اما از زمانی که کاتلین به زبان رسمی اندروید تبدیل شد، برخی از کتابخانهها و ابزارهای جدیدتر نیز به این زبان نوشته شدهاند.
چهار: Bash و Python: برخی از ابزارهای مدیریت سیستم و اسکریپتهای سطح پایین در اندروید ممکن است با Bash یا Python نوشته شده باشند، اما این زبانها نقش اصلی در توسعه هسته و اجزای کلیدی ندارند.
بنابراین، هسته اصلی سیستمعامل اندروید با C و C++ نوشته شده است و بخشهای سطح بالاتر و بیشتر سرویسها و APIهای آن با Java توسعه یافتهاند.
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🔥6❤1
به وقت فیلم | Jobs 2013 🍿
🔸 فیلم Jobs درباره زندگی استیو جابز، بنیانگذار شرکت اپل، است. داستان از دوران دانشجویی او شروع میشود و نشان میدهد چطور جابز با دوستانش در یک گاراژ کوچک، اولین کامپیوتر اپل را ساختند. فیلم به موفقیتها و شکستهای او، از اخراجش از اپل تا بازگشتش به شرکت و تبدیل کردن اپل به یکی از بزرگترین شرکتهای دنیا، میپردازد. با نگاهی به تلاشها و رویاهای جابز، فیلم به ما یادآوری میکند که خلاقیت و پشتکار، حتی در سختترین شرایط، میتواند به موفقیتهای بزرگ منجر شود.
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🔸 فیلم Jobs درباره زندگی استیو جابز، بنیانگذار شرکت اپل، است. داستان از دوران دانشجویی او شروع میشود و نشان میدهد چطور جابز با دوستانش در یک گاراژ کوچک، اولین کامپیوتر اپل را ساختند. فیلم به موفقیتها و شکستهای او، از اخراجش از اپل تا بازگشتش به شرکت و تبدیل کردن اپل به یکی از بزرگترین شرکتهای دنیا، میپردازد. با نگاهی به تلاشها و رویاهای جابز، فیلم به ما یادآوری میکند که خلاقیت و پشتکار، حتی در سختترین شرایط، میتواند به موفقیتهای بزرگ منجر شود.
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🔥8👍1
مـــــادر دو بخش است:
«مــا» و «در»…
و
قـــصه یتیمی «مــا» از کنار «در» شروع شد... 💔
تسلیت ایام فاطمیه به خانواده دانشگاه حکیم و دانشجویان علوم کامپیوتر 💔
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
«مــا» و «در»…
و
قـــصه یتیمی «مــا» از کنار «در» شروع شد... 💔
تسلیت ایام فاطمیه به خانواده دانشگاه حکیم و دانشجویان علوم کامپیوتر 💔
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
💔7
This media is not supported in your browser
VIEW IN TELEGRAM
✍️ تحلیل رفتار ( مدت حضوری، فعالیت) مشتریان و کارکنان کافه با هوش مصنوعی
#هوش_مصنوعی
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
#هوش_مصنوعی
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🔥3❤1
قوانین نانوشته برنامهنویسی 🖥
این قوانین نانوشته به عنوان بهترین روشها در جامعه برنامهنویسان شناخته میشوند و پایبندی به آنها میتواند به بهبود کیفیت کار و تجربه کاری شما کمک کند.
1️⃣ کد برای انسانها نوشته میشود، نه ماشینها
کد شما باید برای دیگران (و خودتان در آینده) قابل فهم باشد. استفاده از نامهای متغیر معنادار، توضیحات و ساختار خوانا به بهبود درک کمک میکند. 👩💻👨💻
2️⃣ کد کوتاه بهتر از کد پیچیده است
از نوشتن کدهای پیچیده خودداری کنید. راهحلهای ساده و کوتاه معمولاً بهتر هستند، چون خطایابی و نگهداری آنها آسانتر است. ✨
3️⃣ زود بهینهسازی نکنید
قبل از اینکه مطمئن شوید کد کار میکند، روی بهینهسازی تمرکز نکنید. ابتدا باید یک راهحل قابل اجرا داشته باشید و سپس بهینهسازی کنید.
4️⃣ همیشه تست بنویسید
تستها به شما کمک میکنند از صحت عملکرد کد مطمئن شوید. نوشتن تستهای واحد (unit tests) و تستهای یکپارچهسازی (integration tests) میتواند از بروز خطاهای ناخواسته جلوگیری کند. ✅
5️⃣ از قانون DRY (Don't Repeat Yourself) پیروی کنید
کد تکراری را حذف کنید و به جای آن از توابع و ماژولهای قابل استفاده مجدد استفاده کنید. این کار نگهداری کد را آسانتر میکند. 🔁
6️⃣ قانون KISS (Keep It Simple, Stupid)
راهحلهای خود را تا حد امکان ساده نگه دارید. هرچه کد پیچیدهتر شود، احتمال بروز خطا و مشکلات بیشتر است. 😊
7️⃣ قانون YAGNI (You Aren't Gonna Need It)
قابلیتهایی که به آنها نیاز ندارید را پیادهسازی نکنید. این کار فقط کد شما را پیچیدهتر و غیرضروری میکند. ❌
8️⃣ مسئولیت محدود برای هر ماژول (Single Responsibility Principle)
هر ماژول یا کلاس باید فقط یک وظیفه مشخص داشته باشد. این کار باعث کاهش وابستگیها و سادهتر شدن تغییرات میشود.
9️⃣ خواندن کد دیگران به اندازه نوشتن کد مهم است
توانایی خواندن و فهمیدن کد دیگران به شما در کار تیمی و مشارکت در پروژههای بزرگ کمک میکند. 🤝
🔟 به مستندات (documentation) اهمیت بدهید
مستندسازی کد و پروژه باعث میشود همکاران یا خودتان در آینده بتوانید به راحتی به پروژه برگردید و آن را توسعه دهید. 📚
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
این قوانین نانوشته به عنوان بهترین روشها در جامعه برنامهنویسان شناخته میشوند و پایبندی به آنها میتواند به بهبود کیفیت کار و تجربه کاری شما کمک کند.
1️⃣ کد برای انسانها نوشته میشود، نه ماشینها
کد شما باید برای دیگران (و خودتان در آینده) قابل فهم باشد. استفاده از نامهای متغیر معنادار، توضیحات و ساختار خوانا به بهبود درک کمک میکند. 👩💻👨💻
2️⃣ کد کوتاه بهتر از کد پیچیده است
از نوشتن کدهای پیچیده خودداری کنید. راهحلهای ساده و کوتاه معمولاً بهتر هستند، چون خطایابی و نگهداری آنها آسانتر است. ✨
3️⃣ زود بهینهسازی نکنید
قبل از اینکه مطمئن شوید کد کار میکند، روی بهینهسازی تمرکز نکنید. ابتدا باید یک راهحل قابل اجرا داشته باشید و سپس بهینهسازی کنید.
4️⃣ همیشه تست بنویسید
تستها به شما کمک میکنند از صحت عملکرد کد مطمئن شوید. نوشتن تستهای واحد (unit tests) و تستهای یکپارچهسازی (integration tests) میتواند از بروز خطاهای ناخواسته جلوگیری کند. ✅
5️⃣ از قانون DRY (Don't Repeat Yourself) پیروی کنید
کد تکراری را حذف کنید و به جای آن از توابع و ماژولهای قابل استفاده مجدد استفاده کنید. این کار نگهداری کد را آسانتر میکند. 🔁
6️⃣ قانون KISS (Keep It Simple, Stupid)
راهحلهای خود را تا حد امکان ساده نگه دارید. هرچه کد پیچیدهتر شود، احتمال بروز خطا و مشکلات بیشتر است. 😊
7️⃣ قانون YAGNI (You Aren't Gonna Need It)
قابلیتهایی که به آنها نیاز ندارید را پیادهسازی نکنید. این کار فقط کد شما را پیچیدهتر و غیرضروری میکند. ❌
8️⃣ مسئولیت محدود برای هر ماژول (Single Responsibility Principle)
هر ماژول یا کلاس باید فقط یک وظیفه مشخص داشته باشد. این کار باعث کاهش وابستگیها و سادهتر شدن تغییرات میشود.
9️⃣ خواندن کد دیگران به اندازه نوشتن کد مهم است
توانایی خواندن و فهمیدن کد دیگران به شما در کار تیمی و مشارکت در پروژههای بزرگ کمک میکند. 🤝
🔟 به مستندات (documentation) اهمیت بدهید
مستندسازی کد و پروژه باعث میشود همکاران یا خودتان در آینده بتوانید به راحتی به پروژه برگردید و آن را توسعه دهید. 📚
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🔥3👍2
💡 دانشجویان کامپیوتر! آیا آمادهاید تا به دنیایی از اطلاعات و فرصتهای بینظیر دسترسی پیدا کنید؟ 📚✨
فقط با یک کلیک به کانال تلگرامی اتحادیه انجمنهای علمی کامپیوتر کشور بپیوندید و از جدیدترین اخبار، منابع آموزشی با گواهی معتبر، فناوری ها و فرصتهای شغلی و رویدادهای جذاب مطلع شوید! 🚀
https://news.1rj.ru/str/cecsau
فقط با یک کلیک به کانال تلگرامی اتحادیه انجمنهای علمی کامپیوتر کشور بپیوندید و از جدیدترین اخبار، منابع آموزشی با گواهی معتبر، فناوری ها و فرصتهای شغلی و رویدادهای جذاب مطلع شوید! 🚀
https://news.1rj.ru/str/cecsau
🔥3
بازیهایی که میتوانید از آنها برنامهنویسی یاد بگیرید🎮
1. CodeCombat
یادگیری Python و JavaScript با حل مراحل.
2. Robocode
برنامهریزی رباتها با Java.
3. Human Resource Machine
حل معماهای برنامهنویسی منطقی.
4. Screeps
بازی آنلاین با کدنویسی JavaScript.
5. TIS-100
برنامهنویسی اسمبلی در یک سیستم قدیمی.
6. Shenzhen I/O
طراحی مدار و کدنویسی.
7. Elevator Saga
بهینهسازی الگوریتمها با JavaScript.
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
1. CodeCombat
یادگیری Python و JavaScript با حل مراحل.
2. Robocode
برنامهریزی رباتها با Java.
3. Human Resource Machine
حل معماهای برنامهنویسی منطقی.
4. Screeps
بازی آنلاین با کدنویسی JavaScript.
5. TIS-100
برنامهنویسی اسمبلی در یک سیستم قدیمی.
6. Shenzhen I/O
طراحی مدار و کدنویسی.
7. Elevator Saga
بهینهسازی الگوریتمها با JavaScript.
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🔥3👍2❤1
🔹افشای اطلاعات داخلی چت جی پی تی.
یک محقق امنیتی به اسم مارکو فیگورا زمانی که داشت که پایتون خود را بازنویسی می کرد با خطای دایرکتوری مورد نظر پیدا نشد، در ادامه از GPT میخواد که محتویات دایرکتوری رو براش لیست کنه و در کمال ناباوری ChatGPT لیست فایل های خودش رو ارائه میده و مشخص میشه که این نرم افزار در یک کانتینر با لینوکس Debian کار می کنه.
خطری که میتونه این اتفاق داشته باشه اینه که با مهندسی معکوس میشه به دستور العمل های این سرویس دسترسی داشت و حتی اطالاعات کاربران میتونه افشا بشه .
و هنوز پاسخی از سمت Open Al نداریم.
انجمن علمی علـوم کامـپـیوتر
🆔@HSU_CS
یک محقق امنیتی به اسم مارکو فیگورا زمانی که داشت که پایتون خود را بازنویسی می کرد با خطای دایرکتوری مورد نظر پیدا نشد، در ادامه از GPT میخواد که محتویات دایرکتوری رو براش لیست کنه و در کمال ناباوری ChatGPT لیست فایل های خودش رو ارائه میده و مشخص میشه که این نرم افزار در یک کانتینر با لینوکس Debian کار می کنه.
خطری که میتونه این اتفاق داشته باشه اینه که با مهندسی معکوس میشه به دستور العمل های این سرویس دسترسی داشت و حتی اطالاعات کاربران میتونه افشا بشه .
و هنوز پاسخی از سمت Open Al نداریم.
انجمن علمی علـوم کامـپـیوتر
🆔@HSU_CS
👍3😁3🔥1🍾1
This media is not supported in your browser
VIEW IN TELEGRAM
✍️ زندان ها در جهان آینده هوشمند به چه شکلی خواهند بود؟
#هوش_مصنوعی
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
#هوش_مصنوعی
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🔥4👍2
🎯 معروفترین مسابقات برنامهنویسی دنیا! 🏆💻
🌟 Google Code Jam
چالشهای الگوریتمی خفن از طرف گوگل! هر سال هزاران برنامهنویس تو این رقابت شرکت میکنن تا خودشون رو ثابت کنن.
🌟 TopCoder
یکی از قدیمیترین و محبوبترین پلتفرمهای مسابقهای با چالشهای جذاب الگوریتمی و طراحی.
🌟 Codeforces
رقابتهای جذاب و هیجانانگیز با رنکینگ جهانی! سطوح مختلفی داره و یه جامعه خفن از برنامهنویسا اینجا هستن.
🌟 ACM ICPC
رقابت بینالمللی دانشجویی!
🌟 LeetCode Contests
مسابقات هفتگی با چالشهای ناب که ذهن هر کدنویسی رو به چالش میکشه.
🌟 HackerRank
چالشهای الگوریتمی و شبیهسازی مصاحبههای فنی!
🌟 Facebook Hacker Cup
چالشهای پیچیده از سمت فیسبوک!
🌟 AtCoder
مسابقه ژاپنی با چالش های برنامه نویسی برای سطوح مختلف
#برنامهنویسی
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🌟 Google Code Jam
چالشهای الگوریتمی خفن از طرف گوگل! هر سال هزاران برنامهنویس تو این رقابت شرکت میکنن تا خودشون رو ثابت کنن.
🌟 TopCoder
یکی از قدیمیترین و محبوبترین پلتفرمهای مسابقهای با چالشهای جذاب الگوریتمی و طراحی.
🌟 Codeforces
رقابتهای جذاب و هیجانانگیز با رنکینگ جهانی! سطوح مختلفی داره و یه جامعه خفن از برنامهنویسا اینجا هستن.
🌟 ACM ICPC
رقابت بینالمللی دانشجویی!
🌟 LeetCode Contests
مسابقات هفتگی با چالشهای ناب که ذهن هر کدنویسی رو به چالش میکشه.
🌟 HackerRank
چالشهای الگوریتمی و شبیهسازی مصاحبههای فنی!
🌟 Facebook Hacker Cup
چالشهای پیچیده از سمت فیسبوک!
🌟 AtCoder
مسابقه ژاپنی با چالش های برنامه نویسی برای سطوح مختلف
#برنامهنویسی
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
👍4🔥3
Forwarded from Char Bug
🎉 مسابقه برنامهنویسی «چارباگ» دانشگاه اصفهان؛ فرصتی بینظیر برای تمام دانشجویان علاقهمند به برنامهنویسی!
💻 انجمن علمی ACM دانشگاه اصفهان مفتخر است میزبان شما در مسابقه ملی برنامهنویسی «چارباگ» باشد. این رقابت هیجانانگیز در روزهای ۱۵ و ۱۶ آذر برگزار میشود.
👥 دانشجویان میتوانند در قالب تیمهای ۲ یا ۳ نفره در این مسابقه شرکت کنند.
🏆 جوایز مسابقه
🥇 تیم اول: ۱۵۰ میلیون ریال
🥈 تیم دوم: ۱۰۰ میلیون ریال
🥉 تیم سوم: ۷۰ میلیون ریال
💶 تیمهای چهارم تا ششم: ۴۰ میلیون ریال
💵 تیمهای هفتم تا نهم: ۲۰ میلیون ریال
🏆 سهمیه ویژه
اولین تیم از دانشگاههای خارج از تهران، یک سهمیه برای مرحله نهایی مسابقه بینالمللی Rayan دریافت خواهد کرد!
⏳هزینه ثبتنام:
هزینه اصلی ثبتنام:۹۶۰ هزار تومان
🤩 اگر تا ۴ آذرماه ثبتنام کنید، از تخفیف ویژه بهرهمند خواهید شد
🎯 تیمهای دانشگاه اصفهان: فقط ۳۶۰ هزار تومان!
🎯 تیمهای غیر دانشگاه اصفهان: تنها ۵۷۰ هزار تومان!
🔗 برای ثبتنام و اطلاعات بیشتر به سایت و کانال مسابقه چارباگ مراجعه کنید.
منتظرتان هستیم! 🌟
➖➖با انجمن ACM همراه باشید➖➖
[تلگرام] | [اینستاگرام] | [لینکدین]
💻 انجمن علمی ACM دانشگاه اصفهان مفتخر است میزبان شما در مسابقه ملی برنامهنویسی «چارباگ» باشد. این رقابت هیجانانگیز در روزهای ۱۵ و ۱۶ آذر برگزار میشود.
👥 دانشجویان میتوانند در قالب تیمهای ۲ یا ۳ نفره در این مسابقه شرکت کنند.
🏆 جوایز مسابقه
🥇 تیم اول: ۱۵۰ میلیون ریال
🥈 تیم دوم: ۱۰۰ میلیون ریال
🥉 تیم سوم: ۷۰ میلیون ریال
💶 تیمهای چهارم تا ششم: ۴۰ میلیون ریال
💵 تیمهای هفتم تا نهم: ۲۰ میلیون ریال
🏆 سهمیه ویژه
اولین تیم از دانشگاههای خارج از تهران، یک سهمیه برای مرحله نهایی مسابقه بینالمللی Rayan دریافت خواهد کرد!
⏳هزینه ثبتنام:
هزینه اصلی ثبتنام:
🤩 اگر تا ۴ آذرماه ثبتنام کنید، از تخفیف ویژه بهرهمند خواهید شد
🎯 تیمهای دانشگاه اصفهان: فقط ۳۶۰ هزار تومان!
🎯 تیمهای غیر دانشگاه اصفهان: تنها ۵۷۰ هزار تومان!
🔗 برای ثبتنام و اطلاعات بیشتر به سایت و کانال مسابقه چارباگ مراجعه کنید.
منتظرتان هستیم! 🌟
➖➖با انجمن ACM همراه باشید➖➖
[تلگرام] | [اینستاگرام] | [لینکدین]
🔥4
با Phind آشنا شوید... 😎
ابزار هوشمصنوعی Phind به سوالات برنامهنویسی شما جواب میده. میتونید ازش ایده بگیرین، مشکلات کدهاتون رو حل کنید و...
https://www.phind.com/
#tools
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
ابزار هوشمصنوعی Phind به سوالات برنامهنویسی شما جواب میده. میتونید ازش ایده بگیرین، مشکلات کدهاتون رو حل کنید و...
https://www.phind.com/
#tools
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
⚡4🔥1
[معرفی فیلم]
🎥 استارت آپ دات کام
📆 سال تولید: 2001
✍️ خلاصه داستان:
این فیلم در واقع تمام جزئیات مربوط به ظهور و سقوط یک کسب و کار نوپای کاملاً واقعی به نام GovWorks را به شما نمایش میدهد و به همین خاطر توصیه میشود که تمامی صاحبان کسب و کار و کارآفرینان این فیلم درجه یک را مشاهده کنند.
#معرفی_فیلم
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🎥 استارت آپ دات کام
📆 سال تولید: 2001
✍️ خلاصه داستان:
این فیلم در واقع تمام جزئیات مربوط به ظهور و سقوط یک کسب و کار نوپای کاملاً واقعی به نام GovWorks را به شما نمایش میدهد و به همین خاطر توصیه میشود که تمامی صاحبان کسب و کار و کارآفرینان این فیلم درجه یک را مشاهده کنند.
#معرفی_فیلم
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
🔥5
ACID: جادوگر تضمین تراکنشها در دیتابیسها! 🧙♂️✨
ACID مجموعهای از چهار ویژگی کلیدی تو دیتابیسهای رابطهایه که کمک میکنه تراکنشها با دقت و بیخطا انجام بشن. اولین بار این مفهوم سال 1983 توسط Theo Härder و Andreas Reuter معرفی شد. بیایید ببینیم این چهار حرف از کجا اومدن:
---
Atomicity (تجزیه ناپذیری):
تصور کن میخوای پول از حساب A به حساب B منتقل کنی. این انتقال باید یا کامل انجام بشه (کم شدن از A و اضافه شدن به B)، یا اصلاً اتفاق نیفته. نصفهنیمه بودن ممنوع! اگه مشکلی پیش بیاد، دیتابیس Rollback میکنه، یعنی همه چی به حالت قبل برمیگرده.
---
Consistency (سازگاری):
دیتابیس همیشه باید تو یه حالت معتبر و درست باشه، چه قبل تراکنش، چه بعدش. مثلاً اگه قانونی داریم که موجودی حساب نمیتونه منفی بشه، هیچ تراکنشی نمیتونه این قانون رو دور بزنه. حتی اگه بخواد، دیتابیس میگه: «نه!» 😎
---
Isolation (انزوا):
وقتی چند نفر همزمان تو یه حساب پول جابهجا میکنن، باید مطمئن بشیم که این تراکنشها رو هم تاثیر نمیذارن. سیستم با مکانیزمهایی مثل Lock کردن، اوضاع رو مدیریت میکنه. اینجا 4 سطح مختلف ایزوله بودن داریم:
🔹 Read Uncommitted: ضعیفترین حالت.
🔹 Read Committed: فقط تغییرات تاییدشده دیده میشن.
🔹 Repeatable Read: خوندنهای تکراری نتیجه یکسان دارن.
🔹 Serializable: قویترین سطح. هر تراکنش انگار تنها تراکنش دنیاست!
---
Durability (ماندگاری):
وقتی تراکنشی با موفقیت انجام شد (Commit شد)، تغییراتش دائمی هستن. حتی اگه برق بره یا سیستم کرش کنه، دادهها از بین نمیرن. دیتابیس با روشهایی مثل Write-Ahead Logging (WAL) این تضمین رو میده.
---
یه نکته جذاب:
دنیای واقعی گاهی بین کارایی (Performance) و تضمین ACID تعادل برقرار میکنه. مثلاً دیتابیسهای NoSQL بیشتر از مدل BASE استفاده میکنن (Basically Available, Soft State, Eventually Consistent) که کمی سازگاری رو قربانی میکنه ولی مقیاسپذیری رو بالا میبره.
پس دفعه بعد که اسم PostgreSQL یا MySQL (با موتور InnoDB) رو شنیدی، بدون که این دیتابیسها از بهترینهای ACID هستن. ولی یادت باشه: ACID همیشه هزینهای روی عملکرد میذاره. 💡
#دیتابیس
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
ACID مجموعهای از چهار ویژگی کلیدی تو دیتابیسهای رابطهایه که کمک میکنه تراکنشها با دقت و بیخطا انجام بشن. اولین بار این مفهوم سال 1983 توسط Theo Härder و Andreas Reuter معرفی شد. بیایید ببینیم این چهار حرف از کجا اومدن:
---
Atomicity (تجزیه ناپذیری):
تصور کن میخوای پول از حساب A به حساب B منتقل کنی. این انتقال باید یا کامل انجام بشه (کم شدن از A و اضافه شدن به B)، یا اصلاً اتفاق نیفته. نصفهنیمه بودن ممنوع! اگه مشکلی پیش بیاد، دیتابیس Rollback میکنه، یعنی همه چی به حالت قبل برمیگرده.
---
Consistency (سازگاری):
دیتابیس همیشه باید تو یه حالت معتبر و درست باشه، چه قبل تراکنش، چه بعدش. مثلاً اگه قانونی داریم که موجودی حساب نمیتونه منفی بشه، هیچ تراکنشی نمیتونه این قانون رو دور بزنه. حتی اگه بخواد، دیتابیس میگه: «نه!» 😎
---
Isolation (انزوا):
وقتی چند نفر همزمان تو یه حساب پول جابهجا میکنن، باید مطمئن بشیم که این تراکنشها رو هم تاثیر نمیذارن. سیستم با مکانیزمهایی مثل Lock کردن، اوضاع رو مدیریت میکنه. اینجا 4 سطح مختلف ایزوله بودن داریم:
🔹 Read Uncommitted: ضعیفترین حالت.
🔹 Read Committed: فقط تغییرات تاییدشده دیده میشن.
🔹 Repeatable Read: خوندنهای تکراری نتیجه یکسان دارن.
🔹 Serializable: قویترین سطح. هر تراکنش انگار تنها تراکنش دنیاست!
---
Durability (ماندگاری):
وقتی تراکنشی با موفقیت انجام شد (Commit شد)، تغییراتش دائمی هستن. حتی اگه برق بره یا سیستم کرش کنه، دادهها از بین نمیرن. دیتابیس با روشهایی مثل Write-Ahead Logging (WAL) این تضمین رو میده.
---
یه نکته جذاب:
دنیای واقعی گاهی بین کارایی (Performance) و تضمین ACID تعادل برقرار میکنه. مثلاً دیتابیسهای NoSQL بیشتر از مدل BASE استفاده میکنن (Basically Available, Soft State, Eventually Consistent) که کمی سازگاری رو قربانی میکنه ولی مقیاسپذیری رو بالا میبره.
پس دفعه بعد که اسم PostgreSQL یا MySQL (با موتور InnoDB) رو شنیدی، بدون که این دیتابیسها از بهترینهای ACID هستن. ولی یادت باشه: ACID همیشه هزینهای روی عملکرد میذاره. 💡
#دیتابیس
دست به مهره پیشرفت... 💻
انجمن علمی علـوم کامـپـیوتر
🆔 @HSU_CS
👍3🔥2