جلسه 14 Spreadsheets and databases
مقدمه: چرا صفحات گسترده و پایگاه داده مهم هستند؟
- تیتر: اهمیت مدیریت داده در دنیای امروز
- شرح: در دنیای دیجیتال امروز، دادهها نقش حیاتی در تصمیمگیری، تحلیل و عملیات سازمانها دارند. از ردیابی فروش گرفته تا مدیریت پروژهها و تحلیلهای آماری، توانایی سازماندهی، ذخیرهسازی و بازیابی مؤثر دادهها ضروری است. صفحات گسترده و پایگاههای داده دو ابزار قدرتمند برای این منظور هستند که هر کدام کاربردها و مزایای خاص خود را دارند.
- مثال: تصور کنید یک فروشگاه کوچک دارید. چگونه موجودی کالاها، فروش روزانه و اطلاعات مشتریان خود را مدیریت میکنید؟ یک صفحه گسترده (مثل اکسل) میتواند برای شروع عالی باشد، اما با رشد فروشگاه، مدیریت این اطلاعات در یک پایگاه داده بسیار کارآمدتر خواهد بود.
۲. صفحات گسترده (Spreadsheets)
- تیتر: آشنایی با صفحات گسترده: اکسل و گوگل شیتس
- شرح: صفحات گسترده ابزارهایی قدرتمند برای سازماندهی، تحلیل و نمایش دادهها در قالب ردیفها و ستونها هستند. آنها برای محاسبات، نمودارها و کارهای تحلیلی ساده تا متوسط ایدهآل هستند.
- کاربردها:
- مدیریت مالی شخصی و کسبوکارهای کوچک
- ایجاد بودجه و پیشبینی
- تحلیل دادههای ساده و ترسیم نمودار
- لیست کردن وظایف و پروژهها
- مفاهیم کلیدی:
- سلول (Cell): محل تلاقی سطر و ستون که دادهای را در خود جای میدهد.
- ورق (Sheet): مجموعهای از سلولها در یک صفحه.
- کتاب کار (Workbook): فایلی که شامل یک یا چند ورق است.
- فرمولها و توابع (Formulas & Functions): دستورالعملهایی برای انجام محاسبات (مانند SUM, AVERAGE, IF).
- نمودارها (Charts): نمایش بصری دادهها (مانند نمودار میلهای، خطی، دایرهای).
- مثال: در اکسل، چگونه مجموع فروش ماهانه را با استفاده از تابع
SUMمحاسبه کنیم؟ - فرض کنید فروش روزانه در ستون B از سطر ۲ تا ۳۲ قرار دارد. در یک سلول خالی، فرمول
=SUM(B2:B32)را وارد میکنیم. - تمرین پایان فصل (صفحات گسترده):
۱. یک صفحه گسترده جدید در اکسل یا گوگل شیتس ایجاد کنید.
۲. اطلاعات ۵ دانشجو شامل نام، نام خانوادگی، نمره میانترم و نمره پایانترم را وارد کنید.
۳. یک ستون جدید به نام “معدل” اضافه کنید و با استفاده از فرمول، معدل هر دانشجو را محاسبه کنید (فرض کنید نمرات از ۲۰ هستند و هر کدام وزن مساوی دارند: (میانترم + پایانترم) / 2).
۴. یک نمودار میلهای ساده برای نمایش نمرات پایانترم دانشجویان رسم کنید.
۳. پایگاههای داده (Databases)
- تیتر: ورود به دنیای پایگاههای داده: سازماندهی دادههای پیچیده
- شرح: پایگاه داده سیستمی سازمانیافته برای ذخیرهسازی، مدیریت و بازیابی مقادیر زیادی از دادهها است. برخلاف صفحات گسترده، پایگاههای داده برای مدیریت روابط پیچیده بین دادهها، تضمین یکپارچگی دادهها و پشتیبانی از تعداد زیادی کاربر طراحی شدهاند.
- انواع پایگاه داده:
- رابطهای (Relational Databases - RDBMS): مانند MySQL, PostgreSQL, SQL Server. دادهها در جداول ذخیره میشوند و روابط بین جداول از طریق کلیدها تعریف میشود. زبان استاندارد برای کار با آنها SQL است.
- غیر رابطهای (NoSQL Databases): مانند MongoDB, Cassandra. برای دادههای ساختارنیافته یا نیمهساختاریافته و مقیاسپذیری بالا طراحی شدهاند.
- مفاهیم کلیدی (برای پایگاه داده رابطهای):
- جدول (Table): مجموعهای از ردیفها و ستونها که یک نوع موجودیت را توصیف میکند (مانند جدول “دانشجویان”، جدول “دورهها”).
- ستون/فیلد (Column/Field): یک ویژگی خاص برای موجودیت (مانند “نام دانشجو”، “شماره دانشجویی”).
- ردیف/رکورد (Row/Record): یک نمونه واحد از موجودیت (مانند اطلاعات یک دانشجوی خاص).
- کلید اصلی (Primary Key): یک یا چند ستون که به طور منحصر به فرد هر ردیف را در جدول شناسایی میکند.
- کلید خارجی (Foreign Key): ستونی در یک جدول که به کلید اصلی در جدول دیگر اشاره میکند و روابط بین جداول را ایجاد میکند.
- SQL (Structured Query Language): زبان استاندارد برای پرسوجو (Query)، درج (Insert)، بهروزرسانی (Update) و حذف (Delete) دادهها در پایگاههای داده رابطهای.
- مثال: چگونه با استفاده از SQL، نام تمام دانشجویانی که در درس “ساختمان داده” ثبتنام کردهاند را پیدا کنیم؟
- فرض کنید دو جدول داریم:
Students(شاملStudentID,StudentName) وEnrollments(شاملEnrollmentID,StudentID,CourseName). - دستور SQL:
sql SELECT s.StudentName
FROM Students s
JOIN Enrollments e ON s.StudentID = e.StudentID
WHERE e.CourseName = 'ساختمان داده';
- تمرین پایان فصل (پایگاه داده):
۱. دو جدول فرضی را در نظر بگیرید:
Products(شاملProductID(کلید اصلی),ProductName,Price)Orders(شاملOrderID(کلید اصلی),ProductID(کلید خارجی),Quantity)
۲. یک پرسوجوی SQL بنویسید که نام تمام محصولاتی که حداقل یک بار سفارش داده شدهاند را برگرداند.
۳. (اختیاری، پیشرفتهتر) یک پرسوجوی SQL بنویسید که نام محصول و مجموع تعداد سفارش داده شده برای هر محصول را نمایش دهد.
۴. مقایسه صفحات گسترده و پایگاه داده
- تیتر: چه زمانی از کدام ابزار استفاده کنیم؟
- خلاصه نکات کلیدی:
- صفحات گسترده:
- مناسب برای دادههای ساده، محاسبات سریع، نمودارهای اولیه، بودجهبندی، لیستهای کوچک.
- یادگیری آسانتر برای کاربران عادی.
- محدودیت در حجم داده و پیچیدگی روابط.
- احتمال بالای خطا در دادههای تکراری یا ناسازگار.
- پایگاه داده:
- مناسب برای حجم بالای داده، روابط پیچیده، تضمین یکپارچگی دادهها، دسترسی همزمان چندین کاربر.
- نیاز به دانش تخصصیتر (SQL، طراحی پایگاه داده).
- کارایی بالا در جستجو و بازیابی دادههای حجیم.
- ابزاری ضروری برای برنامههای کاربردی و وبسایتها.
- مثال: اگر بخواهید لیست دانشجویان و نمرات آنها را مدیریت کنید، برای یک کلاس کوچک، صفحه گسترده کافی است. اما اگر دانشگاه بخواهد سیستم جامع دانشجویی، آموزشی و مالی را پیادهسازی کند، قطعاً نیاز به یک یا چند پایگاه داده قدرتمند دارد.
۵. ابزارهای رایج
- تیتر: معرفی ابزارهای کاربردی
- صفحات گسترده:
- Microsoft Excel
- Google Sheets
- LibreOffice Calc
- پایگاه داده رابطهای (RDBMS):
- MySQL (رایگان و متنباز، بسیار محبوب)
- PostgreSQL (رایگان و متنباز، قدرتمند و پیشرفته)
- SQLite (فایل-محور، مناسب برای برنامههای کوچک و موبایل)
- Microsoft SQL Server (تجاری، قدرتمند)
- Oracle Database (تجاری، سازمانی)
- پایگاه داده NoSQL:
- MongoDB (مستند-محور، محبوب)
- Redis (کلید-مقدار، حافظه پنهان)
۶. جمعبندی و گامهای بعدی
- خلاصه نکات کلیدی:
- صفحات گسترده و پایگاههای داده ابزارهای اساسی برای مدیریت داده هستند.
- انتخاب ابزار مناسب به حجم، پیچیدگی و نوع داده بستگی دارد.
- صفحات گسترده برای سادگی و تحلیلهای سریع عالیاند.
- پایگاههای داده برای مقیاسپذیری، پیچیدگی و یکپارچگی دادهها ضروری هستند.
- یادگیری مفاهیم پایه و ابزارهای رایج، مهارت ارزشمندی برای دانشجویان کامپیوتر است.
- گامهای بعدی برای دانشجویان:
- تمرین بیشتر با توابع و نمودارهای صفحات گسترده.
- نصب و کار با یک پایگاه داده رابطهای ساده مانند MySQL یا PostgreSQL.
- یادگیری اصول اولیه زبان SQL.
- بررسی پروژههای کوچک که نیاز به ترکیب صفحات گسترده و پایگاه داده دارند.