Media is too big
VIEW IN TELEGRAM
🖥
یادگیری برنامهنویسی و علوم کامپیوتر مسیری پیوسته و پویا است که هیچگاه به پایان نمیرسد. در این مسیر، تنها حفظ مهارتها کافی نیست؛ چرا که تکنولوژی همواره در حال تغییر است و آنچه امروز آموختهایم ممکن است فردا منسوخ شود. بنابراین، بهروزرسانی مداوم دانش و تسلط بر مفاهیم جدید، کلید موفقیت است. اما مهمتر از همه، باید به تقویت تفکر نقادانه و توانایی تحلیل عمیق مسائل توجه کرد؛ چرا که این مهارتها هستند که ما را قادر میسازند که نه تنها فقط کد بنویسیم، بلکه بهترین راهحلها را برای چالشها بیابیم و در دنیای پیچیدهی کامپیوتر پیشرو باشیم.🤌
برشی از صحبتهای مهندس میرمیرانی ملقب به “جادی”
و نظرشون بر این رویکرد را به خصوص برای دانشجویان این حوزه میتونید مشاهده کنید.👆
@computer_jsu🎓
یادگیری برنامهنویسی و علوم کامپیوتر مسیری پیوسته و پویا است که هیچگاه به پایان نمیرسد. در این مسیر، تنها حفظ مهارتها کافی نیست؛ چرا که تکنولوژی همواره در حال تغییر است و آنچه امروز آموختهایم ممکن است فردا منسوخ شود. بنابراین، بهروزرسانی مداوم دانش و تسلط بر مفاهیم جدید، کلید موفقیت است. اما مهمتر از همه، باید به تقویت تفکر نقادانه و توانایی تحلیل عمیق مسائل توجه کرد؛ چرا که این مهارتها هستند که ما را قادر میسازند که نه تنها فقط کد بنویسیم، بلکه بهترین راهحلها را برای چالشها بیابیم و در دنیای پیچیدهی کامپیوتر پیشرو باشیم.🤌
برشی از صحبتهای مهندس میرمیرانی ملقب به “جادی”
و نظرشون بر این رویکرد را به خصوص برای دانشجویان این حوزه میتونید مشاهده کنید.👆
@computer_jsu🎓
❤9🔥2
تلگرام در نسخه بتای جدید اندروید ، تغییرات ظاهری و ناوبری را به طور اساسی تغییر داده و به IOS شباهت بیشتری پیدا کرده.
▫️دسترسی به تنظیمات سادهتر شده و هم از طریق تب پروفایل و هم منوی سهنقطه بالای صفحه امکانپذیر است.
▫️ با نگهداشتن تب پروفایل، جابهجایی سریع بین اکانتها تنها با یک لمس انجام میشود.
▫️ نوار جستجو همیشه در بالای فهرست چتها حضور دارد تا دسترسی سریعتر باشد.
▫️ دکمه ساخت استوری به بالای صفحه منتقل شده و جلوهای منظمتر به محیط داده است.
▫️ آیکونهای تنظیمات و نمایش پوشههای چتها با ظاهری مدرن بازطراحی شدهاند.
▫️ پنل استیکر، ایموجی و GIF نیز با طراحی جدید، هماهنگتر و چشمنوازتر از گذشته شده است.
@computer_jsu🎓
▫️دسترسی به تنظیمات سادهتر شده و هم از طریق تب پروفایل و هم منوی سهنقطه بالای صفحه امکانپذیر است.
▫️ با نگهداشتن تب پروفایل، جابهجایی سریع بین اکانتها تنها با یک لمس انجام میشود.
▫️ نوار جستجو همیشه در بالای فهرست چتها حضور دارد تا دسترسی سریعتر باشد.
▫️ دکمه ساخت استوری به بالای صفحه منتقل شده و جلوهای منظمتر به محیط داده است.
▫️ آیکونهای تنظیمات و نمایش پوشههای چتها با ظاهری مدرن بازطراحی شدهاند.
▫️ پنل استیکر، ایموجی و GIF نیز با طراحی جدید، هماهنگتر و چشمنوازتر از گذشته شده است.
@computer_jsu🎓
🔥5👍3
Stack 🆚 Heap
💾 استک و هیپ؛ دو مفهوم مهم در مدیریت حافظه هستن.
در خیلی از زبانهای برنامهنویسی سطح بالا، لازم نیست زیاد به استک و هیپ فکر کنید.
اما وقتی وارد دنیای زبانهای سیستمی مثل Rust، C، Assembly و… میشوید،
اینکه دادهتان کجا ذخیره میشود، مستقیماً روی عملکرد، امنیت و طراحی کد تأثیر میگذارد 🔥
🧠 استک (Stack) چیست؟
استک بخشی از حافظه است که دادهها را بهصورت آخرین وارد شده، اولین خارج شده (LIFO) نگه میدارد.
دقیقاً مثل یک دسته بشقاب 🍽
*بشقاب جدید → روی بقیه قرار میگیره
*برداشتن بشقاب → فقط از بالا ممکنه
📌 عملیاتها در استک:
افزودن داده ➜ push
حذف داده ➜ pop
⚠️ نکته: تمام دادههای روی استک باید اندازهی ثابت و مشخص در زمان کامپایل داشته باشند و اگر اندازه داده نامشخص یا متغیر باشد، جایش روی استک نیست.❌
🏗 هیپ (Heap) چیست
؟
هیپ آزادی عمل بیشتری دارد، اما هزینه داره😔
وقتی دادهای را روی هیپ ذخیره میکنید:
1️⃣ از سیستم، فضای حافظه درخواست میکنید
2️⃣ تخصیصدهنده حافظه، یک جای خالی مناسب پیدا میکند
3️⃣ آدرس آن فضا را بهصورت یک اشارهگر (Pointer) برمیگرداند
💢 خود داده روی هیپ است، اما اشارهگر آن معمولاً روی استک ذخیره میشود.
@computer_jsu🎓
💾 استک و هیپ؛ دو مفهوم مهم در مدیریت حافظه هستن.
در خیلی از زبانهای برنامهنویسی سطح بالا، لازم نیست زیاد به استک و هیپ فکر کنید.
اما وقتی وارد دنیای زبانهای سیستمی مثل Rust، C، Assembly و… میشوید،
اینکه دادهتان کجا ذخیره میشود، مستقیماً روی عملکرد، امنیت و طراحی کد تأثیر میگذارد 🔥
🧠 استک (Stack) چیست؟
استک بخشی از حافظه است که دادهها را بهصورت آخرین وارد شده، اولین خارج شده (LIFO) نگه میدارد.
دقیقاً مثل یک دسته بشقاب 🍽
*بشقاب جدید → روی بقیه قرار میگیره
*برداشتن بشقاب → فقط از بالا ممکنه
📌 عملیاتها در استک:
افزودن داده ➜ push
حذف داده ➜ pop
⚠️ نکته: تمام دادههای روی استک باید اندازهی ثابت و مشخص در زمان کامپایل داشته باشند و اگر اندازه داده نامشخص یا متغیر باشد، جایش روی استک نیست.❌
🏗 هیپ (Heap) چیست
؟
هیپ آزادی عمل بیشتری دارد، اما هزینه داره😔
وقتی دادهای را روی هیپ ذخیره میکنید:
1️⃣ از سیستم، فضای حافظه درخواست میکنید
2️⃣ تخصیصدهنده حافظه، یک جای خالی مناسب پیدا میکند
3️⃣ آدرس آن فضا را بهصورت یک اشارهگر (Pointer) برمیگرداند
💢 خود داده روی هیپ است، اما اشارهگر آن معمولاً روی استک ذخیره میشود.
@computer_jsu🎓
🔥11❤2👍2
اطلاعیه مهم در خصوص مجازی شدن امتحانات پایان ترم
به اطلاع کلیه دانشجویان گرامی میرساند؛
بر اساس تصمیم اتخاذشده در سراسر استان خوزستان، تغییرات زیر در نحوه برگزاری امتحانات پایانترم نیمسال اول سال تحصیلی ۱۴۰۵–۱۴۰۴ اتخاذ گردید:
🔹️امتحانات روز پنجشنبه ۱۸ دی ماه طبق برنامه قبلی به صورت حضوری برقرار خواهد بود.
🔹 امتحانات روز شنبه ۲۰ دیماه به یکشنبه ۲۸ دیماه و بصورت مجازی موکول میگردد.
🔹 امتحانات روزهای یکشنبه ۲۱ دی الی پنجشنبه ۲۵ دی مطابق برنامه قبلی (همان روز و همان ساعت) و بصورت مجازی برگزار خواهند شد.
🔹امتحانات بر بستر سامانه LMS دانشگاه برگزار خواهد شد. اطلاعات تکمیلی، نحوه استفاده دانشجویان از این سامانه و سایر موارد در این خصوص متعاقبا اطلاع رسانی خواهد شد. لذا لازم است دانشجویان به اطلاعیه های آموزشی بعدی توجه داشته باشند.
لذا از دانشجویان محترم تقاضا میشود با توجه به فرجه ایجادشده تا روز جمعه ۱۹ دیماه، ضمن حفظ آرامش، نسبت به ترک سراهای دانشجویی و بازگشت به محل سکونت خود اقدام نمایند.
🔹 تأکید میشود صرفاً لوازم ارزشمند و ضروری و همچنین مواد فاسدشدنی همراه برده شود.
اطلاعات تکمیلی و هرگونه اطلاعرسانی بعدی صرفاً از طریق مراجع رسمی دانشگاه اعلام خواهد شد.
معاونت آموزشی و معانت فرهنگی و دانشجویی دانشگاه
به اطلاع کلیه دانشجویان گرامی میرساند؛
بر اساس تصمیم اتخاذشده در سراسر استان خوزستان، تغییرات زیر در نحوه برگزاری امتحانات پایانترم نیمسال اول سال تحصیلی ۱۴۰۵–۱۴۰۴ اتخاذ گردید:
🔹️امتحانات روز پنجشنبه ۱۸ دی ماه طبق برنامه قبلی به صورت حضوری برقرار خواهد بود.
🔹 امتحانات روز شنبه ۲۰ دیماه به یکشنبه ۲۸ دیماه و بصورت مجازی موکول میگردد.
🔹 امتحانات روزهای یکشنبه ۲۱ دی الی پنجشنبه ۲۵ دی مطابق برنامه قبلی (همان روز و همان ساعت) و بصورت مجازی برگزار خواهند شد.
🔹امتحانات بر بستر سامانه LMS دانشگاه برگزار خواهد شد. اطلاعات تکمیلی، نحوه استفاده دانشجویان از این سامانه و سایر موارد در این خصوص متعاقبا اطلاع رسانی خواهد شد. لذا لازم است دانشجویان به اطلاعیه های آموزشی بعدی توجه داشته باشند.
لذا از دانشجویان محترم تقاضا میشود با توجه به فرجه ایجادشده تا روز جمعه ۱۹ دیماه، ضمن حفظ آرامش، نسبت به ترک سراهای دانشجویی و بازگشت به محل سکونت خود اقدام نمایند.
🔹 تأکید میشود صرفاً لوازم ارزشمند و ضروری و همچنین مواد فاسدشدنی همراه برده شود.
اطلاعات تکمیلی و هرگونه اطلاعرسانی بعدی صرفاً از طریق مراجع رسمی دانشگاه اعلام خواهد شد.
معاونت آموزشی و معانت فرهنگی و دانشجویی دانشگاه
🔥8👀5⚡2
در آپدیت جدید تلگرام برای برخی شماره های ایرانی قابلیت استوری فعال شده
🔥9👀2
📣 یادآوری : از فردا ۱۹ ام تا ۲۰ ام بهمن ماه به مدت دو روز زمان حذف و اضافه است.
👍8
انجمن علمی مهندسی کامپیوتر جندی شاپور
در آپدیت جدید تلگرام برای برخی شماره های ایرانی قابلیت استوری فعال شده
طبق بررسیها، به نظر میاد که محدودیت تلگرام برای انتشار استوری روی شماره های ایران و چند کشور دیگه، متفاوت از باقی کشورهاست و این شماره ها در طول فعالیتشون فقط 3 استوری به صورت رایگان میتونن منتشر کنن!
این تعداد هر هفته یا هر ماه ریست نمیشه، بلکه بعد از انتشار 3 استوری، این اکانتها دیگه امکان انتشار استوری به صورت رایگان رو از دست میدن و نیاز به اشتراک پریمیوم برای انجام اینکار خواهند داشت.
به همین دلیل هست که قبل از ازاد شدن استوری برای شماره های ایرانی، افرادی که اشتراک پریمیوم خریده بودن و با اون حداقل 3 استوری گذاشته بودن، دیگه امکان انتشار استوری در حال حاضر رو ندارن.
@computer_jsu
این تعداد هر هفته یا هر ماه ریست نمیشه، بلکه بعد از انتشار 3 استوری، این اکانتها دیگه امکان انتشار استوری به صورت رایگان رو از دست میدن و نیاز به اشتراک پریمیوم برای انجام اینکار خواهند داشت.
به همین دلیل هست که قبل از ازاد شدن استوری برای شماره های ایرانی، افرادی که اشتراک پریمیوم خریده بودن و با اون حداقل 3 استوری گذاشته بودن، دیگه امکان انتشار استوری در حال حاضر رو ندارن.
@computer_jsu
👀7❤2
💻 کامپایلر و مفسر
در دنیای برنامهنویسی، ما کدها را با زبانهایی مینویسیم که برای انسان قابل فهم هستند؛ اما کامپیوتر تنها زبان ماشین (صفر و یک) را درک میکند.
بنابراین برای اجرای هر برنامه، به ابزاری نیاز داریم که این کدهای قابل فهم برای انسان را به زبانی تبدیل کند که سیستم بتواند آن را اجرا کند.
اینجاست که دو مفهوم مهم وارد میشوند:
🔁 کامپایلر
🔎 مفسر
با نقش این دو «مترجم» در دنیای برنامهنویسی، نحوهی عملکرد آنها و تفاوتهای اساسیشان آشنا خواهیم شد.
@compuer_jsu
در دنیای برنامهنویسی، ما کدها را با زبانهایی مینویسیم که برای انسان قابل فهم هستند؛ اما کامپیوتر تنها زبان ماشین (صفر و یک) را درک میکند.
بنابراین برای اجرای هر برنامه، به ابزاری نیاز داریم که این کدهای قابل فهم برای انسان را به زبانی تبدیل کند که سیستم بتواند آن را اجرا کند.
اینجاست که دو مفهوم مهم وارد میشوند:
🔁 کامپایلر
🔎 مفسر
با نقش این دو «مترجم» در دنیای برنامهنویسی، نحوهی عملکرد آنها و تفاوتهای اساسیشان آشنا خواهیم شد.
@compuer_jsu
❤4⚡2👍2🔥2
🔁کامپایلر چیست؟
برای اینکه کدهای برنامهنویسی برای کامپیوتر قابل فهم باشند، باید به زبان ماشین (Machine Code) تبدیل شوند؛ زیرا پردازنده تنها این زبان را درک و اجرا میکند.
کامپایلر (Compiler) نرمافزاری است که کل کد برنامه را پیش از اجرا، به زبان ماشین ترجمه میکند.
⸻
⚙️ نحوه عملکرد کامپایلر
در روش کامپایلری:
• 📌 ابتدا کل برنامه باید یکبار کامپایل شود.
• 📂 پس از کامپایل موفق، یک فایل اجرایی مستقل (مثلاً exe) تولید میشود.
• 🚫 اگر در کد خطایی وجود داشته باشد، فرآیند کامپایل متوقف میشود و با خطای Compile Error مواجه میشویم.
• 🔁 در صورت ایجاد هر تغییری در کد، باید کل برنامه دوباره کامپایل شود تا فایل اجرایی جدید ساخته شود.
پس از اینکه برنامه یکبار کامپایل شد، برای اجرای دفعات بعدی دیگر نیازی به کامپایل مجدد نیست (مگر اینکه کد تغییر کند)، زیرا خروجی تولیدشده از قبل به زبان ماشین ترجمه شده است.
⸻
🚀 ویژگیهای مهم کامپایلر
• ترجمهی کامل برنامه پیش از اجرا
• تولید فایل اجرایی مستقل
• سرعت اجرای بالا
• نیاز به کامپایل مجدد در صورت تغییر کد
• نمایش خطاها پیش از اجرای برنامه
⸻
💻 زبانهای برنامهنویسی کامپایلری
برخی از زبانهای شناختهشده که از روش کامپایلری استفاده میکنند عبارتاند از:
• C
• C++
• C#
• Java
• Go
@compuer_jsu
برای اینکه کدهای برنامهنویسی برای کامپیوتر قابل فهم باشند، باید به زبان ماشین (Machine Code) تبدیل شوند؛ زیرا پردازنده تنها این زبان را درک و اجرا میکند.
کامپایلر (Compiler) نرمافزاری است که کل کد برنامه را پیش از اجرا، به زبان ماشین ترجمه میکند.
⸻
⚙️ نحوه عملکرد کامپایلر
در روش کامپایلری:
• 📌 ابتدا کل برنامه باید یکبار کامپایل شود.
• 📂 پس از کامپایل موفق، یک فایل اجرایی مستقل (مثلاً exe) تولید میشود.
• 🚫 اگر در کد خطایی وجود داشته باشد، فرآیند کامپایل متوقف میشود و با خطای Compile Error مواجه میشویم.
• 🔁 در صورت ایجاد هر تغییری در کد، باید کل برنامه دوباره کامپایل شود تا فایل اجرایی جدید ساخته شود.
پس از اینکه برنامه یکبار کامپایل شد، برای اجرای دفعات بعدی دیگر نیازی به کامپایل مجدد نیست (مگر اینکه کد تغییر کند)، زیرا خروجی تولیدشده از قبل به زبان ماشین ترجمه شده است.
⸻
🚀 ویژگیهای مهم کامپایلر
• ترجمهی کامل برنامه پیش از اجرا
• تولید فایل اجرایی مستقل
• سرعت اجرای بالا
• نیاز به کامپایل مجدد در صورت تغییر کد
• نمایش خطاها پیش از اجرای برنامه
⸻
💻 زبانهای برنامهنویسی کامپایلری
برخی از زبانهای شناختهشده که از روش کامپایلری استفاده میکنند عبارتاند از:
• C
• C++
• C#
• Java
• Go
@compuer_jsu
❤5👍2🔥2⚡1
🔍مفسر چیست؟
مفسر (Interpreter) نرمافزاری است که مانند کامپایلر، کدهای نوشتهشده با زبانهای سطح بالا را به زبانی قابل فهم برای کامپیوتر (زبان ماشین) تبدیل میکند.
اما تفاوت اصلی آن با کامپایلر در نحوه و زمان ترجمه است.
⸻
⚙️ نحوه عملکرد مفسر
در روش مفسری:
• ▶️ برنامه همزمان با اجرا ترجمه میشود.
• 📖 کدها خطبهخط خوانده، ترجمه و اجرا میشوند.
• 📂 فایل اجرایی مستقل (مثل exe) تولید نمیشود.
• 🔁 برای هر بار اجرای برنامه، فرآیند ترجمه دوباره انجام میشود.
• ❌ اگر خطایی وجود داشته باشد، همان لحظه و در همان خط نمایش داده میشود.
در کامپایلر، پس از تولید فایل نهایی، دیگر نیازی به ترجمه مجدد نیست (مگر اینکه کد تغییر کند).
اما در مفسر، چون فایل نهایی تولید نمیشود، هر بار اجرای برنامه نیازمند ترجمه دوباره است.
⸻
💻 زبانهای برنامهنویسی مفسری
برخی از زبانهایی که معمولاً بهصورت مفسری اجرا میشوند عبارتاند از:
• JavaScript
• PHP
• Python
• Ruby
@compuer_jsu
مفسر (Interpreter) نرمافزاری است که مانند کامپایلر، کدهای نوشتهشده با زبانهای سطح بالا را به زبانی قابل فهم برای کامپیوتر (زبان ماشین) تبدیل میکند.
اما تفاوت اصلی آن با کامپایلر در نحوه و زمان ترجمه است.
⸻
⚙️ نحوه عملکرد مفسر
در روش مفسری:
• ▶️ برنامه همزمان با اجرا ترجمه میشود.
• 📖 کدها خطبهخط خوانده، ترجمه و اجرا میشوند.
• 📂 فایل اجرایی مستقل (مثل exe) تولید نمیشود.
• 🔁 برای هر بار اجرای برنامه، فرآیند ترجمه دوباره انجام میشود.
• ❌ اگر خطایی وجود داشته باشد، همان لحظه و در همان خط نمایش داده میشود.
در کامپایلر، پس از تولید فایل نهایی، دیگر نیازی به ترجمه مجدد نیست (مگر اینکه کد تغییر کند).
اما در مفسر، چون فایل نهایی تولید نمیشود، هر بار اجرای برنامه نیازمند ترجمه دوباره است.
⸻
💻 زبانهای برنامهنویسی مفسری
برخی از زبانهایی که معمولاً بهصورت مفسری اجرا میشوند عبارتاند از:
• JavaScript
• PHP
• Python
• Ruby
@compuer_jsu
❤4👍2🔥2⚡1
️ ⚖️تفاوت کامپایلر و مفسر چیست؟
تفاوت اصلی کامپایلر و مفسر در زمان ترجمه، نحوه اجرا، سرعت، خطایابی و وابستگی به سیستمعامل است. در ادامه این تفاوتها را بررسی میکنیم:
⸻
🚀 سرعت اجرا
✅ زبانهای کامپایلری سریعتر اجرا میشوند.
چرا؟
• در زبانهای کامپایلری، پس از ترجمه کامل برنامه، یک فایل اجرایی نهایی (مثلاً exe) تولید میشود.
• در اجرایهای بعدی، اگر کد تغییری نکرده باشد، همان فایل بدون نیاز به ترجمه مجدد اجرا میشود.
• بنابراین اجرای برنامه سریعتر خواهد بود.
❗ اما در زبانهای مفسری:
• برنامه در هر بار اجرا خطبهخط ترجمه میشود.
• فایل اجرایی مستقل ساخته نمیشود.
• در نتیجه، به دلیل ترجمهی مداوم، سرعت اجرا معمولاً کمتر است.
⸻
🐞 خطایابی (Debug)
✅ اشکالزدایی در زبانهای مفسری سادهتر است.
چرا؟
• در زبانهای مفسری، کدها خطبهخط اجرا میشوند.
• اگر در خطی خطا (Bug) وجود داشته باشد، برنامه دقیقاً در همان خط متوقف میشود.
• بنابراین تشخیص محل خطا راحتتر است.
❗ اما در زبانهای کامپایلری:
• کل برنامه بهصورت یکجا ترجمه میشود.
• اگر خطایی وجود داشته باشد، ممکن است پیدا کردن محل دقیق آن دشوارتر باشد.
• فرآیند دیباگ معمولاً پیچیدهتر است.
⸻
🖥 وابستگی به سیستمعامل
یکی از تفاوتهای مهم دیگر، وابستگی به پلتفرم یا سیستمعامل است.
🔹 زبانهای مفسری
• معمولاً وابسته به سیستمعامل نیستند.
• در هر سیستمی که مفسر آن زبان نصب باشد (ویندوز، لینوکس، مک و…) قابل اجرا هستند.
• چون هنگام اجرا ترجمه میشوند، محدود به یک پلتفرم خاص نیستند.
🔹 زبانهای کامپایلری
• معمولاً وابسته به سیستمعاملی هستند که در آن کامپایل شدهاند.
• اگر برنامهای در ویندوز کامپایل شود، ممکن است در لینوکس اجرا نشود.
• برای اجرا در سیستمعامل دیگر، باید دوباره در همان محیط کامپایل شود.
@compuer_jsu
تفاوت اصلی کامپایلر و مفسر در زمان ترجمه، نحوه اجرا، سرعت، خطایابی و وابستگی به سیستمعامل است. در ادامه این تفاوتها را بررسی میکنیم:
⸻
🚀 سرعت اجرا
✅ زبانهای کامپایلری سریعتر اجرا میشوند.
چرا؟
• در زبانهای کامپایلری، پس از ترجمه کامل برنامه، یک فایل اجرایی نهایی (مثلاً exe) تولید میشود.
• در اجرایهای بعدی، اگر کد تغییری نکرده باشد، همان فایل بدون نیاز به ترجمه مجدد اجرا میشود.
• بنابراین اجرای برنامه سریعتر خواهد بود.
❗ اما در زبانهای مفسری:
• برنامه در هر بار اجرا خطبهخط ترجمه میشود.
• فایل اجرایی مستقل ساخته نمیشود.
• در نتیجه، به دلیل ترجمهی مداوم، سرعت اجرا معمولاً کمتر است.
⸻
🐞 خطایابی (Debug)
✅ اشکالزدایی در زبانهای مفسری سادهتر است.
چرا؟
• در زبانهای مفسری، کدها خطبهخط اجرا میشوند.
• اگر در خطی خطا (Bug) وجود داشته باشد، برنامه دقیقاً در همان خط متوقف میشود.
• بنابراین تشخیص محل خطا راحتتر است.
❗ اما در زبانهای کامپایلری:
• کل برنامه بهصورت یکجا ترجمه میشود.
• اگر خطایی وجود داشته باشد، ممکن است پیدا کردن محل دقیق آن دشوارتر باشد.
• فرآیند دیباگ معمولاً پیچیدهتر است.
⸻
🖥 وابستگی به سیستمعامل
یکی از تفاوتهای مهم دیگر، وابستگی به پلتفرم یا سیستمعامل است.
🔹 زبانهای مفسری
• معمولاً وابسته به سیستمعامل نیستند.
• در هر سیستمی که مفسر آن زبان نصب باشد (ویندوز، لینوکس، مک و…) قابل اجرا هستند.
• چون هنگام اجرا ترجمه میشوند، محدود به یک پلتفرم خاص نیستند.
🔹 زبانهای کامپایلری
• معمولاً وابسته به سیستمعاملی هستند که در آن کامپایل شدهاند.
• اگر برنامهای در ویندوز کامپایل شود، ممکن است در لینوکس اجرا نشود.
• برای اجرا در سیستمعامل دیگر، باید دوباره در همان محیط کامپایل شود.
@compuer_jsu
❤6🔥3⚡2👍1
چطور یک فایل ۷۵ گیگابایتی هنگام زیپ شدن ۲۰ گیگابایت میشود؟
و بعد به شکلی جادویی دوباره به همان ۷۵ گیگابایت برمیگردد؟
بیایید این توهم را بشکنیم:
فایلهای زیپ دادهها را پاک نمیکنند.
آنها تکرارها را حذف میکنند.
مثال:
اگر یک فایل شامل این عبارت باشد:
AAAAAAABBBBBBBCCCCCCC
فایل زیپ آن را به این صورت ذخیره میکند:
A x7, B x7, C x7
فضای کمتر، اطلاعات یکسان.
اکثر فایلهای حجیم دارای الگو هستند:
● متنهای تکراری
● پیکسلهای مشابه
● متادیتای (فراداده) تکراری
● بلاکهای کد مازاد و مشابه
الگوریتمهای فشردهسازی:
۱. تکرارها را پیدا میکنند.
۲. آنها را فقط یکبار ذخیره میکنند.
۳. یک «نقشه» برای بازسازی مجدد آن در آینده اضافه میکنند.
آن نقشه دلیل اصلی این است که فایل میتواند دوباره به اندازه کامل خود برگردد.
چیزی ساخته نمیشود. چیزی از دست نمیرود.
فقط بازسازی میشود.
چرا برخی فایلها به سختی کوچک میشوند؟
● ویدیوها (از قبل فشرده شدهاند)
● تصاویری مثل JPG یا PNG
● فایلهای رمزگذاری شده (Encrypted)
این فایلها تکرار کمتری دارند که منجر به فشردهسازی کمتر میشود.
زیپ کردن جادو نیست.
زیپ در واقع ریاضیات هوشمندانه + الگوهاست.
دادهها کاهش پیدا نکردند، بلکه به شکلی بهینه بستهبندی شدند.
@compuer_jsu
و بعد به شکلی جادویی دوباره به همان ۷۵ گیگابایت برمیگردد؟
بیایید این توهم را بشکنیم:
فایلهای زیپ دادهها را پاک نمیکنند.
آنها تکرارها را حذف میکنند.
مثال:
اگر یک فایل شامل این عبارت باشد:
AAAAAAABBBBBBBCCCCCCC
فایل زیپ آن را به این صورت ذخیره میکند:
A x7, B x7, C x7
فضای کمتر، اطلاعات یکسان.
اکثر فایلهای حجیم دارای الگو هستند:
● متنهای تکراری
● پیکسلهای مشابه
● متادیتای (فراداده) تکراری
● بلاکهای کد مازاد و مشابه
الگوریتمهای فشردهسازی:
۱. تکرارها را پیدا میکنند.
۲. آنها را فقط یکبار ذخیره میکنند.
۳. یک «نقشه» برای بازسازی مجدد آن در آینده اضافه میکنند.
آن نقشه دلیل اصلی این است که فایل میتواند دوباره به اندازه کامل خود برگردد.
چیزی ساخته نمیشود. چیزی از دست نمیرود.
فقط بازسازی میشود.
چرا برخی فایلها به سختی کوچک میشوند؟
● ویدیوها (از قبل فشرده شدهاند)
● تصاویری مثل JPG یا PNG
● فایلهای رمزگذاری شده (Encrypted)
این فایلها تکرار کمتری دارند که منجر به فشردهسازی کمتر میشود.
زیپ کردن جادو نیست.
زیپ در واقع ریاضیات هوشمندانه + الگوهاست.
دادهها کاهش پیدا نکردند، بلکه به شکلی بهینه بستهبندی شدند.
@compuer_jsu
🔥12❤3👍2⚡1
پنجم اسفندماه، زادروز خواجه نصیرالدین طوسی و روز مهندس، بر تمامی دانشجویان خلاق و پرتلاش مهندسی کامپیوتر مبارک باد.
شما که با دانش و پشتکار خود، معماران آیندهی دنیای دیجیتال هستید، شایستهی بهترینها در این مسیر هیجانانگیزید. انجمن علمی مهندسی کامپیوتر امیدوار است تلاشهای شما به دستاوردهایی ماندگار و تحولآفرین تبدیل شود.
با آرزوی موفقیتهای مستمر، نوآوریهای بیمرز و آیندهای درخشان.
روز مهندس مبارک!👨💻 👩💻
📢 کانال انجمن علمی مهندسی کامپیوتر
@compuer_jsu🎓
شما که با دانش و پشتکار خود، معماران آیندهی دنیای دیجیتال هستید، شایستهی بهترینها در این مسیر هیجانانگیزید. انجمن علمی مهندسی کامپیوتر امیدوار است تلاشهای شما به دستاوردهایی ماندگار و تحولآفرین تبدیل شود.
با آرزوی موفقیتهای مستمر، نوآوریهای بیمرز و آیندهای درخشان.
روز مهندس مبارک!
@compuer_jsu
Please open Telegram to view this post
VIEW IN TELEGRAM
❤23
🎁 ۱ میلیون تومان اعتبار هدیه کوئرا (فقط تا آخر امشب)
اگه دنبال یادگیری زبان یا مهارت برنامهنویسی جدیدی هستی، کوئرا تا آخر امشب ۱ میلیون تومان روی دورههای آموزشیاش اعتبار هدیه میده.
🟠 نکته جذاب ماجرا:
حتی اگه نمیخواید هیچ هزینه اضافهای بکنید، یه سری از دورههای پایه قیمتشون زیر ۱ میلیون تومانه؛ این یعنی با این اعتبار میتونید اون دورهها رو کاملا رایگان دریافت کنید!
⏰ مهلت: فقط تا پایان امشب
🔗 https://quera.org/r/c076u
اگه دنبال یادگیری زبان یا مهارت برنامهنویسی جدیدی هستی، کوئرا تا آخر امشب ۱ میلیون تومان روی دورههای آموزشیاش اعتبار هدیه میده.
🟠 نکته جذاب ماجرا:
حتی اگه نمیخواید هیچ هزینه اضافهای بکنید، یه سری از دورههای پایه قیمتشون زیر ۱ میلیون تومانه؛ این یعنی با این اعتبار میتونید اون دورهها رو کاملا رایگان دریافت کنید!
⏰ مهلت: فقط تا پایان امشب
🔗 https://quera.org/r/c076u
🔥6❤5