موسسه آموزش عالی غیردولتی غیرانتفاعی کارون
گزارش کارآموزی
موضوع:
شرکت ملی حفاری ایران
ارائه شده به:
سرکارخانم مهندس فروزان امیری دوانی
تهیه کننده:
مرجان تواناپور
مهندسی تکنولوژی کامپیوتر- نرم افزار
خرداد92
پروردگارا:
کمکم کن تا در سراشیبی های زندگی آن شعله کوچک آسمانی را که در سینه ام نهادی و وجدان نام دارد پاک و خنده نگاه دارم.
"شکسپیر"
تقدیروتشکر:
باسپاس ازسه وجودمقدس:
آنان که ناتوان شدندتامابه توانایی برسیم
موهایشان سپیدشدتاماروسفیدشویم
وعاشقانه سوختندتاگرمابخش وجودماوروشنگرراهمان باشند
پدرانمان
مادرانمان
استادانمان
فهرست مطالب
مقدمه:……………………………………………………………………………………………………………………… 1
فصل اول: آشنایی کلی بامکان کارآموزی:
تاریخچه صنعت حفاری در ایران………………………………………………………………………………….3
نمودار سازمانی و تشکیلات……………………………………………………………………………………….. 6
نوع محصولات تولیدی یا خدماتی ……………………………………………………………………………. 7
شرح مختصری از فرآیند تولیدی یا خدماتی………………………………………………………………..12
فصل دوم: ارزیابی بخشهای مرتبط با رشته علمی کارآموز
موقعیت رشته کارآموز در واحد صنعتی…………………………………………………………………….. 14
بررسی شرح وظایف رشته کارآموز در واحد صنعتی…………………………………………………. .15
امور جانبی در دست اقدام………………………………………………………………………………………..16
برنامه های آینده……………………………………………………………………………………………………… 16
تکنیکهایی که توسط رشته مورد نظر در واحد صنعتی بکار می رود ………………………………16
سایر مواردی که توسط استاد کارآموزی مشخص می گردد……………………………………………. 16
فصل سوم :آزمون آموخته هاونتایج
نگاهی به ویژوال بیسیک …………………………………………………………………………………………. 19
فصل چهارم: فرم های پیشرفت کارآموزی:
فرم های پیشرفت کارآموزی…………………………………………………………………………………….. 33
گزارش پایان دوره کارآموزی……………………………………………………………………………………. 36
نامه اعلام پایان کارآموزی …………………………………………………………………………………………37
مقدمه:
نفت امروزه بعنوان مهمترین منبع انرژی در جهان محسوب می گردد لایه های دارای نفت و گاز در اعماق زمین ابتدا توسط گروه های اکتشاف و با استفاده از مطالعات زمین شناسی، لایه آزمایی و پتزوفیزیک مورد شناسایی و بررسی قرار می گیرند و در صورت مشاهده لایه های نفتی کار استخراج و بهره برداری از مخازن با حفر چاه های متعدد آغاز می گردد.
صنعت حفاری به منظور دستیابی به ذخایر زیرزمینی جالب ترین و هیجان انگیزترین فصل داستان نفت است. چرا که شرح تلاش سخت غرورانگیز انسان است که با سلاح دانش و تجربه با طبیعت خشن و نیروهای مرموز نهفته آن به مبارزه برمی خیزد تا برای ارتقاء زندگی به گنجینه های پنهان در دل زمین دست یابد.
حفاری چاه های نفت و گاز کاری است دقیق، حساس و طاقت فرسا که بدلیل پیچیدگی تکنولوژی و تنوع تخصص های وابسته به آن بصورت انحصاری توسط معدودی از شرکتهای حفاری در دنیا انجام می پذیرد.
از آنجایی که کامپیوترها برای سرعت و انجام هر چه دقیق تر اطلاعات روز به روز پیشرفت کردند تا بتوانند ابزاری مفید در پیشبرد مقاصد و رسیدن به اهداف ما باشند. با توجه به این که عملیات حفاری چاه های نفت از حساسیت بسیار بالای برخوردار است لذا نیاز هر چه بیشتر به این علم در سازمان احساس می شد، شرکت ملی حفاری ایران به سرعت برای مکانیزه کردن ادارات خود اقدام کرد. در حال حاضر این شرکت با داشتن اداره خدمات رایگان و با وجود نیروهای مجرب، از دانش کامپیوتر بهره کامل را می برد.
فصل اول
1-1تاریخچه صنعت حفاری در ایران:
کشور ایران یکی از کشورهای استخراج کننده نفت و گاز می باشد عملیات اکتشاف نفت و گاز در ایران در سال 1280 شمسی در نواحی غرب کشور آغاز گردید و سپس در نواحی جنوبی کشور ادامه یافت. بدنبال چند سال تلاش مداوم و مستمر، نهایتاً در سال 1287 هجری شمسی اولین چاه اکتشافی و قابل بهره برداری در منطقه مسجد سلیمان حفاری گردید و به نفت رسید پس از ان عملیات کاوش برای کشف مخازن نفتی در دیگر مناطق ادامه یافت و در پی آن حوزه های نفتی هفتگل، آغاجاری، گچساران، پازنان و نفت سفید کشف گردید و بدنبال آن مخازن بسیار غنی و مهم دیگری نظیر میادین نفتی لالی، اهواز، بینک، بی بی، مارون و کرنج نیز کشف و مورد بهره برداری قرار گرفت.
درست یک سال بعد از استخراج نفت در سال 1288 شمسی کلیه عملیات اکتشاف، استخراج و صدور نفت در دولت خارجی قرار گرفت. از آن پس سالهای بسیاری در بی خبری و بی اعتنایی شاهان و دولتمردان وقت گذاشت و نفت ایران سرچشمه ترقی، رشد صنایع و اقتصاد کشورهای غربی بویژه انگلیس و آمریکا شد و از آن رهگذر نه تنها چیزی عاید صاحب و مالک خود ساخت. که سرچشمه بسیاری از بلایا و آشفتگی هایی نیز در داخل کشور گردد.
پس از سالها در پی ارتقاء آگاهی سیاسی و مبارزات حق طلبانه مردم ایران بخشی از پروژه اکتشاف، تولید و بهره برداری از مخازن نفت ملی اعلام گردد.
ولی صنعت حفاری بدلیل حساسیت و ویژگی آن همچنان در تسلط بیگانگان باقی مانده بطوری که شرکتهای خارجی پس از ملی شدن نفت نیز حاضر نبودند تسلط و نقش کلیدی و کنترل خود را در این بخش از دست بدهند. این دوره تا سال 1357 طول کشید. غارت گری و چپاول صنایع نفتی از طریق عقد قراردادهای استعماری از شاخص های مهم این دوره از حیاط صنعت حفاری کشور می یابد پیروزی شکوهمند انقلاب اسلامی در سال 1357 موجب دگرگونی و تحولات بنیادینی در نهادهای فرهنگی، اجتماعی، اقتصادی و سیاسی کشور و به تیغ آن صنعت نفت و صنعت حفاری گردید که امروزه ثمره آن را می توان به عیان مشاهده نمود. خلعید کامل از بیگانگان در صنعت نفت، رشد و توسعه روزافزون در بخشهای فنی/ مهندسی/ استحصال میانتی نفت و گاز از مخازن و استقلال و خودباوری را می توان از ویژگی های این دوره از تاریخ صنعت کشور برشمرد.
1-1-1تاسیس شرکت ملی حفاری ایران:
شرکت ملی حفاری ایران بعنوان مولد انقلاب اسلامی در اول دی ماه 1358 بفرمان بنیانگذار جمهوری اسلامی حضرت امام خمینی (ره) تاسیس گردید. و فعالیت خود را با 6 دستگاه حفاری آغاز کرد.
1-1-2جایگاه سازمانی و حوزه فعالیت:
شرکت ملی حفاری یکی از شرکتهای تابعه شرکت ملی نفت ایران می باشد و بر اساس اساسنامه مربوط اجرای عملیات حفاری به منظور اکتشاف، تولید و بهره برداری از مخازن نفت و گاز و نیز تعمیر و ترمیم آنها و ایجاد چاه های تزریقی و انجام کلیه خدمات فنی وابسته اعم از قلعه و داخلی و غلات غاره را بر عهده دارد، شرکت ملی حفاری ایران به لحاظ دامنه عملیاتی از بزرگترین شرکتهای فرعی شرکت ملی نفت ایران محسوب شده و از شمالی ترین مناطق (سرخس، خانگیران) مرکزی، غرب، جنوب غرب تا جنوبی ترین مناطق (خلیج فارس) و بطور کلی بیش از 10 استان کشور که امکان استحصال نفت و گاز وجود داشته باشد فعالیت می نماید. این شرکت هم اکنون با افزایش دستگاه های حفاری و توسعه خدمات فنی و مهندسی با بهره گیری بیش از 5500 نفر نیروی انسانی متخصص عملیات حفاری نفت و گاز را در اقصی نقاط کشور انجام می دهد.
1-2نمودار سازمانی و تشکیلات:
سازمان و ساختار تشکیلاتی شرکت ملی حفاری ایران با توجه به اساسنامه مربوط به تغییرات و تحولات اساسی که در تنظیم و تطبیق آن با ماهیت و کارهای صنعت نفت کشور صورت گرفته مبتنی بر 11 مدیریت و 10 واحد ستادی طرح ریزی شده است:
1-3 نوع محصولات تولیدی یا خدماتی :
1-3-1 مدیریت امور مهندسی:
مدیریت امور مهندسی یکی از مدیریت ها و ارکان مهم شرکت ملی حفاری ایران است که با توجه به گسترش فعالیت در چرخه اقتصادی و الزام حضور در عرصه های بین المللی در رقابت با شرکتهای خارجی بر اساس ساختار مدیریتی نوین تشکیل و با دانش فنی و مهندسی و آکادمیک به عنوان مغز متفکر سازمان نقش هدایت/ نظارت و راهبری را در کلیه عملیات حفاری و خدمات فنی وابسته به آن در پروژه تولید ایفا می نماید. این مدیریت با 169 سمت کارشناسی و کارشناسی ارشد فنی/ مهندسی و 7 اداره زیر مجموعه یکی از محوری ترین مدیریت های شرکت ملی حفاری ایران است.
1. ادارات مهندسی حفاری 2. مهندسی و برنامه ریزی تعمیرات
3. پژوهش و فن آوری حفاری 4. مهندسی و طراحی راه و ساختمان
5. آزمایشگاه حفاری 6. خدمات رایانه ای
7. لوازم و ابزار در گردش
از ادارات زیر مجموعه این مدیریت محسوب می شود.
1-3-1-1 اداره مهندسی حفاری:
اداره مهندسی حفاری در چهار محور اساسی زیر نظر مدیر امور مهندسی فعالیت می نماید:
1- مهندسی و برنامه ریزی گل و سیمان حفاری
2- مهندسی و برنامه ریزی عملیات حفاری
3- مهندسی کالاهای حفاری
4- مهندسی و برنامه ریزی اسید کاری
این اداره با 45 سمت شامل 8 سمت کارشناسی و 14 سمت کارشناسی ارشد و 7 سمت سرپرست پروژه وظایف:
1- برنامه ریزی/ هماهنگی و تحقیق و مطالعه درباره شناسایی و انتخاب جدیدترین و مناسب ترین روشها، ماشین آلات و ابزار آلات مورد استفاده در صنعت حفاری و خدماتی فنی وابسته.
2- دریافت درخواست های شرکتهای داخلی و خارجی در قالب مناقصات بکارگیری دستگاه های حفاری، خدمات فنی و ابزار حفاری، بررسی و هماهنگی با ادارات ذیربط و تهیه پیشنهادات فنی- مالی شرکت ملی حفاری ایران متناسب با درخواست متقاضی و شرایط بازار.
3- مهندسی کالای حفاری
4- تهیه فهرست کالا و مواد مورد نیاز جهت حفر و تکمیل چاهای نفت و گاز در پروژه های شرکت ملی حفاری ایران
1-3-1-2 اداره مهندسی و برنامه ریزی تعمیرات :
اداره مهندسی و برنامه ریزی با 31 سمت وظیفه مهندسی و برنامه ریزی تعمیرات را در مدیریت های عملیات حفاری در خشکی و دریا و خدمات فنی حفاری واداره ابزار در گردش عهده دار می باشد:
1- تهیه و تنظیم کتابچه های راهنمای فنی و تعمیراتی انواع وسایل و تجهیزات و ماشین آلات
2- برنامه ریزی تعمیرات دوره ای و اساسی و به دنبال آن پیش بینی قطعات و لوازم یدکی مورد نیاز آنها
3- نظارت بر تعمیرات انجام شده بر روی کلیه ماشین آلات دستگاههای حفاری و خدمات فنی وانجام کنترل کیفی و تائید تعمیرات صورت گرفته .
4- پیش بینی ماشین آلات موردنیاز سالیانه مدیریتهای عملیات و تهیه تقاضاهای خرید مربوطه و انجام بررسی های فنی ، تعیین و مشخص نمودن قطعات یدکی مورد نیاز ماشین آلات خریداری شده جهت خرید های مستمر آتی.
5- تهیه و تنظیم انواع جداول و آمار و گزارشات مربوطه و بایگانی جهت مراجعات و کنترل های بعدی از اهم فعالیت های این اداره می باشد.
1-3-1-3 اداره پژوهش و فن آوری حفاری :
اداره پژوهش و فن آوری حفاری که با هدف انجام فعالیتهای تحقیقاتی و پژوهشی و بررسی راهکارهای علمی و عملی مناسب جهت توسعه فن آوری در صنعت نفت و همچنین کاهش ضایعات و هزینه ها و افزایش درآمد ها و ارتقاء بهره وری بهینه از تاسیسات تشکیل یافته وظایف عمده زیر را در مجموعه مدیریت امور مهندسی عهده دار می باشد:
1- ارتباط و هماهنگی با مراکز علمی ، تحقیقاتی ، پژوهشی و دانشگاهی کشور جهت آگاهی از آخرین تحولات و دستاوردهای جدید در بخش علمی و فنی ، ماشین آلات ، دستگاهها – معرفی و بررسی منابع تولیدی مختلف مرتبط با صنعت حفاری بمنظور ساخت قطعات و کالاهای مورد نیاز شرکت
2- نظارت بر روی درخواست های پژوهش و ساخت قطعات و کالا بمنظور تشخیص اولویت طرحها بر اساس نیاز عملیاتی.
1-3-1-4 اداره مهندسی و طراحی راه و ساختمان :
اداره مهندسی و طراحی راه و ساختمان تمامی فعالیت های مربوط به مهندسی طراحی و مهندسی راه ساختمان را در قالب پروژه های مختلف انجام و مسئولیت
نظارت و راهبری را درتمامی طرحهای فوق عهده دار می باشد :
اهم فعالیت های این اداره عبارتند از :
1- انجام کلیه مطالعات و بررسی های لازم بمنظور تهیه طرحهای مهندسی بر اساس روشهای علمی / فنی و استانداردهای مربوطه
2- نظارت بر اجرای دقیق و کامل پروژوه های عمرانی در چار چوب برنامه های زمانبندی و شرایط و مفاد قرار دادها
3- نظارت بر تائید صورت وضعیت کارکرد پیمانکاران و مقایسه هزینه های واقعی بودجه مصوب پروژه ها
4- نظارت و بررسی دقیق وکامل پروژه ها بر اساس طرحها و نقشه های اجرایی مصوب و فهرست کارهای ساختمانی
5- انجام کلیه عملیات نقشه برداری و نقشه کشی پروژه های شرکت
1-3-1-5 اداره آزمایشگاه حفاری :
1- اداره آزمایشگاه حفاری که در دو بخش مکانیک و شیمی فعالیت می کند با استفاده از نیروهای متخصص ، تجهیزات و دستگاههای پیشرفته انواع آزمایشات را روی قطعات انجام داده تا امکان ساخت یک قطعه مشابه خارجی فراهم شود.
2- انجام آزمایشات مخرب و غیر مخرب بمنظور کنترل خواص مکانیکی قطعات ، انجام آزمایشات شیمی تجزیه بمنظور شناسایی عناصر شیمیایی تشکیل دهنده قطعات و تعیین درصد عناصر موجود وتشخیص معادل آلیاژی استاندارد به روش اسپکتروفتومتری یا روش XRF انجام آزمایشات شیمی حفاری بمنظور تعیین خواص اسید و سیمان و گل از اهم و فعالیت های این واحد بشمار می رود.
1-3-1-6 اداره خدمات رایانه ای :
تشـــکیل این اداره که بر اساس ضرورتهای گسترش روز افزون تکنولوژی و دستیابی به سیستم های مکانیزه در کلیه سطوح صورت گرفته هر گونه فعالیت در بخش رایانه ای را شامل میگردد که اینک به اهم آنها اشاره می شود :
1- طراحی و ایجاد سایت اینترنتی ویژه شرکت طراحی ، پیاده سازی و راهبری مرکز سرویس دهی اینترنت ( ISP) شرکت بوسیله شبکه LAN
2- طراحی و اجرای شبکه رایانه ای در بین ساختمانهای شرکت و ارتباط کاربران با یکدیگر بوسیله شبکه
3- نگهداری و پشتیبانی از تجهیزات سخت افزاری و نرم افزاری سیستم جامع ON LINE وزارت نفت برای مدیریت های مالی / اداری و بازرگانی
4- تهیه سیستم های مکانیزه نرم افزاری بمنظور مکانیزه نمودن بخش های مختلف شرکت
1-3-1-7اداره بازرسی فنی :
اداره بازرسی فنی با چهارده سمت مهندسی و مهندسی ارشد کار نظارت و بازرسی فنی از ماشین آلات ، دستگاهها وتجهیزات حفاری را بصورت دوره ای و اتفاقی انجام داده و ضمن هماهنگی با کلیه واحدها و کارشناسان گزارشات فنی مربوطه را جمع آوری و پیشنهادات لازم را ارائه می نماید:
این اداره همچنین در بخش های :
1- کنترل و کاهش روند خوردگی در کل سیستم حفاری
2- اخذ گواهینامه بین المللی
3- انجام آزمایشات غیر مخرب NDT
4- و نظارت بر پروژه های بازسازی دستگاه های حفاری دریایی و خشکی فعالیت می نماید.
از دیــگر ادارات تابعه مدیریت امور مهندسی ، اداره برآورد هزینه و بودجه پروژه های ساختمانی و عمرانی است که برآورد مالی تمامی پروژه های راه و ساختمان توسط آن انجام میگردد همچنین بانک اطلاعاتی فنی با جمع آوری و طبقه بندی و ذخیره سازی انواع اسناد ، مدارک ، گزارشات ، دستور.
1-4 شرح مختصری از فرآیند تولیدی یا خدماتی:
از جمله فرآیند تولیدی یا خدماتی این است که مدیریت امور مهندسی ارتقاء سطح دانش کارکنان این شرکت با بیشتر نمودن آموزش هایی که در این شرکت ها انجام می شود. و استخدام نیروهای جدید با معلومات بالا و بالا بردن کیفیت تولیدات و خدمات و افزایش سطح آموزش کامپیوتر برای کارکنان این شرکت بوسیله درخواستی برای ارائه دوره های تخصصی مهندسی شبکه های NT، مایکروسافت EMCS ، مهندسی برنامه نویسی مایکروسافت MCSD.ETN، متخصص ارشد طراحی صفحات وب A+ و دوره بین المللی کاربردی کامپیوتر ICDL داده شده است. که توسط اساتید مجرب و با امکانات مناسب صورت گیرد.
فصل دوم
2-1موقعیت رشته کارآموز در واحد صنعتی:
2-2 بررسی شرح وظایف رشته کارآموز در واحد صنعتی
خدمات رایانه یکی از بخشهای اصلی اداره امور مهندسی به شمار می آید که اهم وظایف آن به شرح زیر است:
1- طراحی و ایجاد سایت اینترنتی ویژه شرکت.
2- طراحی و پیاده سازی و راهبری مرکز سرویس دهی اینترنت (isp) شرکت بوسیله شبکه LAN
3- طراحی و اجرای شبکه رایانه ای در بین ساختمان های شرکت و ارتباط کاربران با یکدیگر بوسیله شبکه
4- نگهداری و پشتیبانی از تجهیزات سخت افزاری و نرم افزاری سیستم جامع On line وزارت نفت برای مدیریت مالی اداری/ بازرگانی.
5- تهیه سیستم های مکانیزه نرم افزاری منظور مکانیزه نمودن بخش های مختلف شرکت
و من ساعات کارآموزی را در واحد نرم افزار، قسمت نگهداری و پشتیبانی از نرم افزاری سیستم جامع On line گذراندم این واحد وظیفه خدمات دهی و پشتیبانی از نرم افزار تمام ادارات شرکت را بر عهده دارد کار روزانه این واحد رسیدگی به موارد جانبی مواجه هستند طبق راندمان کاری اداره مراجعه کنندگان رایانه یا هر دستگاه جانبی دیگر را تحویل این واحد می دهد. به علت تعداد مراجعات درخواست هایی که زمان گیر هستند در صف قرار می گیرند. و هم از تمام جوانب دیگر، تا در آینده با مشکل خاص دیگری برخورد نداشته باشند. در همین مراجعات رایانه ها و دستگاه های جانبی را از جهت این که عمر مفید خود را کرده اند یا نه، احتیاج به ارتقاء دارند نیز کاملا بررسی می شوند زیرا برنامه های تخصصی که بوسیله این رایانه ها پردازش می شود از اهمیت خاص برخوردار می شوند.و علاوه بر این ها کارهای دیگری از جمله نصب برنامه های سیستمی، برنامه های کاربردی، ویروس یابی، رفع عیوب کامپیوترها وتعویض ویندوز همچنین در مواردی به جستجوی موضوعاتی در اینترنت می پرداختم.
2-3 امور جانبی در دست اقدام:
در حال حاضر آموزش عیب یابی سیستم را فرا گرفتم و اطلاعات بسیاری در این زمینه کسب کردم از جمله بررسی مشکلات نرم افزاری وسیستمی،کارباremot dssktop وغیره
4-2 برنامه های آینده:
و قصد دارم بعدا کارهای دیگری را فرا بگیرم از جمله نصب برنامه های سیستمی، برنامه های کاربردی، تعویض قطعات کامپیوتر، جستجوی موضوعات تخصصی در اینترنت و غیره و آموزش هایی از برنامه نویسی فرا بگیرم.
2-5 تکنیکهایی که توسط رشته مورد نظر در واحد صنعتی بکار می رود :
تکنیکی که دراین بخش بکاربرده می شداستفاده از remot dssktopبود.که این مزیت راشامل می شدکه درمواقعی که دربخش های مختلف ادارات شرکت مشکلات جزئی نرم افزاری پیش می آمددراسرع وقت برطرف شده واین باعث بالا رفتن سرعت می شدودیگرلازم به آوردن حضوری کیس درشرکت نبودوباعث می شدازدرنوبت ماندن کیس ها برای مشکلات جزئی درصف جلوگیری شود.
6-2سایر مواردی که توسط استاد کارآموزی مشخص می گردد:
یکی از مواردی که توسط استاد کارآموزی مشخص شده ارائه پروژه هایی به عنوان گزارش کارهای انجام شده در واحد صنعتی می باشد.
فصل سوم
آزمون آموخته هاونتایج:
فراگیری برنامه ویژوال بیسیک ونکاتی دیگر که دربالا به آن اشاره شدوهمچنین دست نوشته هایی که دربرگه های اسکن شده آمده.
3-1نگاهی به ویژوال بیسیک :
این زبان در محیط ویندوز قدرت فوق العاده ای دارد به طوری که از سبک برنامه نویسی شیءگرا پیروی می کند. تولید برنامه ها در این زبان بسیار ساده است، چرا که بخش زیادی از برنامه را کامپایلر زبان تولید می کند. قبل از پرداختن به عناصر زبان نگاهی به سبکهای برنامه نویسی خواهیم داشت.
سبکهای برنامه نویسی
به طور کلی سه سبک برنامه نویسی تاکنون مورد استفاده قرار گرفته اند، سبک سنتی، سبک برنامه نویسی ساخت یافته و سبک برنامه نویسی شیء گرا.
سبک برنامه نویسی سنتی
در سبک برنامه نویسی سنتی، نوشتن برنامه ها و ردیابی اجرای آنها بسیار دشوار بود، زیرا با استفاده از دستور go to کنترل اجرای برنامه ازهر نقطه ای به نقطه دیگر منتقل می شد. نگهداری این برنامه ها و انجام تغییرات در آنها برای پاسخگویی به وضعیت و نیازهای جدید بسیار دشوار بود. این سبک برنامه نویسی کاملا منسوخ شده است.
برنامه نویسی ساخت یافته
در دهه 1960 میلادی، تولید بسیاری از نرم افزارها با مشکل مواجه شد. زمانبندی تولید نرم افزار به تاخیر می افتاد، هزینه ها بالا بود و در نتیجه بودجه تولید نرم افزار افزایش می یافت و نرم افزار تولیدی نیز از قابلیت اعتماد بالایی برخوردار نبوده است. تولید کنندگان نرم افزار به این نتیجه رسیدند که تولید نرم افزار مشکل تر از چیزی است که در مورد آن تصور می شود. تحقیقاتی که برای برطرف کردن مشکلات به عمل آمد، منجر به برنامه نویسی ساخت یافته شد. برنامه نویسی ساخت یافته، روش منظمی برای نوشتن برنامه هاست و منجر به نوشتن برنامه هایی می شود که خوانایی آنها بالاست، تست و اشکال زدایی آنها راحت تر و اصلاح آنها آسانتر است.
در برنامه نویسی ساخت یافته، برنامه به صورت مجموعه ای از فعالیت ها تصور می شود که باید بر روی داده ها انجام شوند. در این روش، هر کار پیچیده ای، به مجموعه ای از کارهای کوچکتر تجزیه می شود تا اینکه کارهای کوچکتر تجزیه می شود تا اینکه کارهای ایجاد شده قابل درک باشند. به عبارت دیگر، برنامه نویس سعی می کند توابعی بنویسد که نیازمندیهای سیستم را برآورده کنند.به عنوان مثالی از برنامه نویسی ساخت یافته، محاسبه میانگین حقوق کارمندان یک شرکت را در نظر بگیرید. این کار، یک فعالیت پیچیده است و به کارهای کوچکتری تقسیم می گردد:
1. حقوق هر کارمند را مشخص کنید.
2. تعداد کارکنان را تعیین کنید.
3. مجموع حقوق تمام افراد را تعیین کنید.
4. مجموع حقوق را بر تعداد افراد تقسیم کنید.
اما فعالیت محاسبه مجموع حقوق می تواند به کارهای کوچکتری تقسیم شود:
1. رکورد کارمند را بازیابی کنید.
2. حقوق کارمند را بازیابی کنید.
3. این حقوق را به مجموع حقوقهایی که تاکنون به دست آوردید اضافه کنید.
4. رکورد کارمند بعدی را بازیابی کنید.
5. در صورتی که کارمندی باقی است، به مرحله 1 بروید.
به همین ترتیب، فعالیت دسترسی به رکورد کارمند می تواند به کارهای کوچکتری تقسیم شود:
1. فایل کارکنان را باز کنید.
2. به رکورد مورد نظر بروید.
3. رکورد را از روی دیسک بخوانید.
برنامه نویسی ساخت یافته، روش موفقی برای حل مسائل پیچیده است، اما مشکلات خاص خودش را دارد.
بعضی از زبانهای برنامه سازی که برای برنامه نویسی ساخت یافته طراحی شدند، عبارت اند از: زبان پاسکال، زبان ادا (Ada) و زبان C زبان پاسکال، زبان مناسبی برای آموزش برنامه نویسی در دانشگاه هاست. زبان ادا برای امور صنعتی، تجاری و نوشتن برنامه های بزرگ بسیار مفید است. زبان C به دلیل ویژگی های خاص خودش، محبوبیت زیادی در دانشگاه ها و خارج از دانشگاه ها پیدا کرده است . ویژوال بیسیک زبان جدیدی است که با سرعت در حال رشد است.
برنامه نویسی شیءگرا:
برنامه نویسی شیءگرا شیوه نوینی است که در آن می توان قطعاتی را ایجاد کرد و در برنامه های مختلف مورد استفاده قرار داد. قابلیت خوانایی برنامه هایی که در این روش نوشته می شوند بالا بوده، تست، عیب یابی و اصلاح آنها آسان است. شیء گرایی، بر اشیاء تاکید دارد.تعدادی از زبانها برنامه نویسی شی ءگرا طراحی شده اند. زبان اسمالتاک یک زبان برنامه نویسی کاملاً شیءگرا است. زبان C++ تکامل یافته زبان C است، دارای ویژگی هایی است که برنامه نویسی شیءگرا در آن امکان پذیر است. در این زبان، برنامه نویسی شیءگرا در زبان ویژوال بیسیک است.
فرمهای برنامه:
فرم، اساس کار تمام برنامه های ویژوال بیسیک است. طراحی برنامه در فرم انجام می شود و عناصر برنامه در این فرم قرار می گیرند. هر وقت ویژوال بیسیک راه اندازی می شود، فرمی در اختیار برنامه نویس قرار می گیرد تا برنامه خود را در آن فرم طراحی کند. فرم همانند پنجره ای در ویندوز است.
انواع داده ها:
یکی از جنبه های مهم هر زبان برنامه سازی که باید مورد بررسی قرار گیرد، انواع داده های آن است. روزمره با داده هایی مثل میزان خرید روزانه و اسامی افراد سر و کار داریم. خرید روزانه را به صورت اعداد ی مثل 1500، 5/143 و اسامی افراد را با کلماتی مثل علی، احمد و رضا بیان می کنیم. انواع داده ها در ویژوال بیسیک عبارتند از داده های عددی، رشته ای، تاریخ و بولین.
داده های عددی:
در ویژوال بیسیک از 7 نوع داده عددی استفاده می شود که در جدول 1-1 آمده است. در استفاده از نوع عددی، دقت داشته باشید که از نوع مناسبی برای اعداد استفاده کنید، به عنوان مثال، اگر با عدد کوچکی سر و کار داریم که حداکثر تا 255 است از نوع Byte استفاده کنید و چنانچه نوع صحیح پاسخگوی نیاز شماست از نوع اعشاری استفاده نکنید.
روش طراحی برنامه شیءگرا:
برای طراحی و ایجاد برنامه شیءگرا باید مراحلی را انجام داد. این مراحل را در اینجا مورد بحث قرار می دهیم.
1. تعیین نیازمندیهای مسئله
2. تحلیل مسئله
3. طراحی کلاسهایی که باید مسئله را حل کنند، این کار با انجام موارد زیر امکان پذیر است:
الف. پیدا کردن کلاسهای موجود، در صورت نیاز
ب. اصلاح کلاسهای موجود، در صورت نیاز
ج. طراحی کلاسهای جدید، در صورت لزوم
4. پیاده سازی کلاسهای جدید
5. تست و بررسی کل برنامه
6. نگهداری و بازسازی برنامه
راه اندازی ویژوال بیسیک:
برنامه ویژوال بیسیک بر روی CD ذخیره شده است که برای استفاده از آن باید آن را در دیسک سخت نصب کنید. در محیط ویندوز، برنامه Install را از روی CD اجرا کنید تا ویژوال بیسیک در منوی Programs ویندوز ظاهر شود.
برای اجرای آن، بر روی گزینه مربوط کلیک کنید تا صفحه اول ویژوال بیسیک ظاهر شود. در این شکل می توانید کارهای مورد نظرتان را شروع کنید. سیستم به طور خودکار بر روی آیکن Standard EXE قرار دارد که برای ایجاد پروژه های ویژوال بیسیک به کار می رود. برای ادامه کار، کلید Enter را فشار دهید یا دکمه Open را در این شکل کلیک کنید. پنجره ای به نام Form1 ظاهر شده است. فرم محیطی است که در آن می توانید برنامه خود را طراحی کنید. یعنی عناصر تشکیل دهنده برنامه در این فرم قرار می گیرند.
پنجره های EromLayout , Properties , Project : هر یک از این پنجره ها را به طور مختصر توضیح می دهیم.
پنجره Project
این پنجره را Project Explorer نیز می نامند و فایلهای پروژه در آن قرار می گیرند. در نوار ابزار این پنجره سه دکمه به نامهای Toggle Folders , View Object , View Code قرار دارند. اگر بر روی View Code کلیک کنید پنجره ای ظاهر می کند. دکمه های View Code و View Object در صورتی فعال هستند که در پنجره Project، در پوشه Forms گزینه Form(Form1) را انتخاب کرده باشید. با هر با کلیک کردن بر روی دکمه Toggle Folder پوشه Form در پنجره Project مخفی یا آشکار می گردد. یعنی اگر اجزای این پوشه مخفی باشند با کلیک کردن این دکمه آشکار می شوند و اگر آشکار باشند با کلیک کردن این دکمه مخفی می شوند.
نام پروژه جدید Project1 و نام فرم جدید Form1 انتخاب شده است (به طور پیش فرض) در ادامه شیوه نامگذاری آنها را نیز می آموزیم. پوشه Forms در پنجره Object حاوی تمام فرمهای مربوط به پروژه است.
پنجره Properties
این پنجره خواص مربوط به فرم یا عنصر فرم را نمایش می دهد دقت داشته باشید که هر عنصر (از جمله فرم) دارای خواص Properties و رویداد Event است که در ادامه به شرح هر کدام خواهیم پرداخت. اما در اینجا می خواهیم این نکته را یادآوری کنیم که خواص عناصر در پنجره Properties دیده می شوند. خواص عناصر می توانند به دو صورت نمایش داده شوند: به صورت الفبایی Alphabetic و به صورت دسته بندی شده برحسب موضوع Categorizad. به عنوان مثال، برای دیدن خواص فرمی که بر روی صفحه نمایش است (یعنی From1) ، بر روی آن در پنجره Properties دکمه راست ماوس را کلیک کرده و در منویی که ظاهر می شود گزینه Description را انتخاب کنید (البته اگر فعلا این خواص را مشاهده می کنید، نیازی به این کار نیست).
پنجره FormLayout
این پنجره مشخص می کند که فرم برنامه در زمان اجرا در کجای صفحه نمایش قرار گیرد در این پنجره تصویری قرار دارد که همانند صفحه نمایش است. وقتی ماوس را به آن تصویر منتقل می کنید، علامت آن به صورت دو فلش دو سر متقاطع در می آید. دکمه ماوس را به پایین فشار داده، آن را در داخل صفحه نمایش به حرکت درآورید (چپ، راست، بالا یا پایین). پس از اینکه فرم در جای مناسبی از صفحه نمایش قرار گرفت، دکمه ماوس را رها کنید. در زمان اجرا، فرم در همان نقطه از صفحه نمایش قرار خواهد گرفت.
جعبه ابزار
جعبه ابزار در سمت چپ صفحه نمایش و تحت عنوان General قرار دارد. این جعبه ابزار در واقع، عناصری هستند کهی می توانید از آنها برای طراحی برنامه خود استفاده کنید.
به نظر می رسد که معرفی مختصری از عناصر جعبه ابزار مفید باشد. در زیر به شرح هر کدام می پردازیم و در فصل دوم به بعد کاربرد آنها را می آموزید:
Point : این عنصر می تواند بر روی عناصر موجود در فرم اثر کند و آنها را انتخاب نماید.
Label : عنصر بر چسب را به فرم اضافه می کند که برای نمایش منتهای غیرقابل ویرایش مفید است.
Frame : گروهی از عناصر را ایجاد می کند.
CheckBox : کادر کنترلی را به فرم اضافه می کند که برای انتخاب گزینه ها به کار می رود.
HScrollBar : نوار جابجایی افقی را به فرم اضافه می کند.
Timer : عنصری برای دستیابی به درایوهای سیستم.
Shape : عنصری برای رسم دایره، مستطیل، مربع و بیضی.
Image : عنصری برای نمایش تصویر.
نوار ابزار:
نوار ابزار شامل ابزارهایی است که معمولا کار گزینه های منوها ر انجام می دهند ولی سرعت دستیابی به آنها زیاد است. باری اینکه نام این ابزارها را یاد بگیرید، ماوس را به هر کدام منتقل کرده، اندکی صبر کنید. با طرز کار این ابزارها در موقع مناسبی آشنا خواهید شد.
اجزای سازنده برنامه ویژوال بیسیک:
اولین قدم در ایجاد یک برنامه، ایجاد یک فرم و سپس قرار دادن عناصر بر روی آن است. عناصر را بر حسب نیاز می توان تشخیص داد و این کار نیاز به تمرین و مشاهده مثالها دارد. به طور کلی می توان گفت که کتابخانه ای از عناصر در ویژوال بیسیک موجود است که برنامه ها از این عناصر ساخته می شوند، کدها توسط ویژوال بیسیک تولید می گردد ولی بعضی از کدها را نیز برنامه نویس باید بنویسد.
چگونه با ویژوال بیسیک برنامه می نویسیم؟
اولین قدم در نوشتن برنامه ویژوال بیسیک، طراحی چیزی است که کاربر با آن سر و کار دارد. به عبارت دیگر، اولین قدم، طراحی صفحه نمایش است. اندازه پنجره ای که برنامه از آن استفاده می کند، چقدر است، به چند پنجره نیاز هست؟ چه قطعاتی باید مورد استفاده قرار گیرند، چه دکمه هایی باید در پنجره ها گنجانده شوند. اشیایی که بر روی پنجره ها قرار می گیرند، همان قطعاتی هستند که در ویژوال بیسیک ارائه می شوند.
طراحی رابط برنامه با کاربرد، در ویژوال بیسیک بسیار ساده است. قطعاتی که در پنجره قرار می گیرند، به طور خودکار ، تمام رفتارهای کاربر، از قبیل حرکت ماوس و کلیک کردن دکمه ها را تشخیص می دهند. توانایی طراحی منو در ویژوال بیسیک بسیار زیاد است و منوهای مختلفی را می توان ایجاد کرد.
پس از اینکه رابط کاربر را تعریف کردید (دکمه ها و سایر قطعات را مشخص نمودید)، کارهای بعدی به سبک برنامه نویسی قدیمی شباهت پیدا خمی کند. قطعات ویژوال بیسیک، رویدادهایی مثل کلیک کردن موس را تشخیص می دهند، ولی چگونگی پاسخگویی به آنها بسته به کدی دارد که برنامه نویس آنها را می نویسد. تقریبا می توان گفت که برای پاسخگویی به رویدادها باید کدهایی را بنویسید.
در برنامه نویسی قدیمی، برنامه ها از بالا به پایین اجرا می شوند. یعنی اجرای برنامه از اولین خط اجرا شده در طی اجرای برنامه، در صورت لزوم، بخشهای بعدی اجرا می شوند. برنامه ویژوال بیسیک، به شکل کاملا متفاوتی عمل می کند. هسته اصلی برنامه ویژوال بیسیک مجموعه ای از کدهای مستقل از هم است که فقط توسط رویدادهایی که برایشان مشخص شده است فعال می گردند و به آنها پاسخ می دهند. بدین ترتیب، کنترل روند برنامه، به دست کاربر است. وقتی برنامه شما به رویدادی باید پاسخ دهد، زیر برنامه ای به نام روال پاسخگویی به رویداد ایجاد می شود الگوی این روال نوشته می شود و به روشی که بعدا گفته خواهد شد، باید دستورات لازم را برای پاسخگویی به آن رویداد بنویسید. نمونه ای از روال پاسخگویی به رویداد به صورت زیر است.
Private Sub From_ Load()
…
End sub
مراحل طراحی برنامه ویژوال بیسیک را می توان به صورت زیر بیان کرد:
1- طراحی و سفارشی کردن پنجره هایی که کاربر با آنها سر و کار دارد.
2- تعیین قطعاتی که باید در پنجره منظور شوند و قطعات باید چه رویدادهایی را پاسخ دهند.
3- نوشتن روال رویداد (مربوط ه هر کدام از رویدادها).
وقتی برنامه ویژوال بیسیک اجرا می شود، کارهای زیر انجام می شود:
1- ویژوال بیسیک همواره پنجره ها و عناصر موجود در هر کدام از آنها را برای تمام رویدادهایی که برنامه می تواند شناسایی کند (مثل حرکت ماوس، کلیک کردن ماوس، فشردن دکمه ها و…) بازبینی می کند.
2- وقتی ویژوال بیسیک رویدادی را مشاهده کرد، اگر پاسخی درونی (built-in) برای آن نداشته باشد، جستجو می کند که آیا روالی برای پاسخگویی نوشتید یا خیر.
3- اگر روال پاسخگویی به رویداد را نوشته باشید، آن را اجرا می کند و به مرحله 1 می رود و منتظر رویداد بعدی می ماند.
4- اگر روال پاسخگویی به رویداد را ننوشته باشید، به مرحله 1 می رود و منتظر رویداد بعدی می ماند.
این مراحل آنقدر ادامه می یابند تا برنامه خاتمه یابد. بنابراین، قبل از اینکه ویژوال بیسیک کاری انجام دهد، باید رویدادی رخ داده باشد. لذا برنامه های رویدادی بیش از آنکه فعال باشند، در حالت انتظار به سر می برند.
تغییر کپش فرم:
وقتی فرمی ایجاد می شود، کلمه Form1 در بالای آن نوشته شده است. این کلمه را کپشن فرم گویند. به عنوان یک برنامه ساده می خواهیم کپشن فرم را تغییر دهیم. برای این منظور مراحل زیر را انجام دهید:
1. ویژوال بیسیک را راه اندازی کنید و بر روی گزینه Standard EXE کلیک کنید تا پروژه جدیدی ایجاد گردد. اکنون From1 را در صفحه نمایش مشاهده می کنید.
2. در پنجره Properties و در بخش Alphabetic صفت کپشن را انتخاب کنید (بر روی آن کلیک کنید). در مقابل آن From1 نوشته شده است. ماوس را بر روی آن کلیک نید و با کلید Bakespace کلمه From1 را پاک کرده، My First From را تایپ کنید و کلید Enter را فشار دهید.
3. با کلید F5 یا گزینه RUN/Start برنامه را اجرا کنید برای خروج از برنامه، پنجره را ببندید.
بدین ترتیب، اولین برنامه ساده خود را نوشتید.
افزودن عناصر به فرم:
برنامه ساده ای که برای تغییر کپشن فرم نوشتید، فاقد هر گونه عنصر بر روی فرم بوده است، اکنون می واهیم برنامه ای بنویسیم که عناصری را به فرم اضافه کند و عملکرد برنامه بر اساس این دکمه ها مشخص شود. می خواهید سه دکمه فرمان (Command Button) بر روی فرم ایجاد کنیم. نام این دکمه ها را خود سیستم به ترتیب Command1 و Command2 و Command3 انتخاب میکند. فعلا با همین نامها کار می کنیم و در ادامه می آموزیم که چگونه نام این عناصر را تغییر دهیم. برای این منظور مراحل زیر را انجام دهید:
1- با گزینه File/ New Project/Standard EXE پروژه جدیدی ایجاد کنید. اکنون From1 را در صفحه نمایش می بینید.
2- بر روی عنصر Command Button در سمت چپ صفحه نمایش (در بخش General) دو بار کلیک کنید تا عنصری به نام Command1 در صفحه نمایش قرار گیرد.
3- آن را با ماوس حرکت دهید تا در جای مناسبی از فرم قرار گیرد. برای حرکت این دکمه، علامت ماوس را به داخل آن برده دکمه را فشار دهید و پایین نگهدارید و ماوس را حرکت دهید. وقتی به جای مناسب رسیدید دکمه ماوس را رها کنید.
4- پس از تنظیم دکمه Command1 بار دیگر بر روی عنصر Command Button دو بار کلیک کنید تا دکمه Command2 ایجاد شود. محل آن را در فرم تنظیم کنید.
5- به روشی که گفته شد، دکمه Command3 را نیز تنظیم نمایید.
6- می خواهیم با کلیک کردن دکمه Command1 کپشن فرم به "First Caption" تبدیل شود. برای این منظور دکمه ماوس را کلیک کنید تا پنجره ای ابز شود که بتوانید دستورات لازم را برای تبدیل کپشن انجام دهید.
7- در جایی که مکان نما قرار دارد دستور زیر را تایپ کنید:
From1. Caption = "First Caption
این دستور می گوید که اگر دکمه Command1 کلیک شد، خاصیت Caption مربوط به From1 به "First Caption" تغییر کند. پس از تایپ این دستور، پنجره را ببندید تا به فرم برگردید
8- می خواهیم با کلیک کردن دکمه Command2 کپشن فرم به "Second Caption" تغییر کند. این دکمه را دو بار کلیک کنید در جایی که مکان نما قرار دارد دستور زیر را تایپ کنید:
From1. Caption = "Second Caption"
اکنون پنجره مربوط را ببندید تا به فرم برگردید.
9- می خواهیم با کلیک کردن دکمه Command3 برنامه خاتمه یابد. این دکمه را دو بار کلیک کنید. در جایی که مکان نما قرار دارد دستور End را تایپ کنید. این دستور هر برنامه ویژوایل بیسیک را خاتمه می دهد. پنجره مربوط را ببندید.
10- برنامه را با کلید F5 یا گزینه RUN/Start اجرا کنید.
11- دکمه Command1 را کلیک کنید. اکنون کپشن فرم به First Caption تغییر می کند. دکمه Command2 را کلیک کنید. اکنون کپشن فرم به Second Caption تغییر می کند. با این برنامه تمرین کنید.
12- برای خروج از برنامه دکمه Command3 را کلیک کنید.
13- برنامه را بر روی دسیک ذخیره کنید. برای این منظور گزینه File/Save Project As را انتخاب کنید و در کادری که نام فایل درخواست می شود نامی را وارد کنید و سپس دکمه Save را کلیک کنید. اکنون باید نام پروژه را انتخاب کنید (سیستم از شما درخواست می کند). پس از انتخاب نام پروژه نیز دکمه Save را کلیک کنید لیست این برنامه در زیر آورده شده است:
فصل چهارم
فرم های پیشرفت کارآموزی:
گزارش پایان دوره کارآموزی:
نامه اعلام پایان کارآموزی
ج
1