دانشکده مهندسی کامپیوتر

Slides:



Advertisements
Similar presentations
Awe sim.
Advertisements

معاونت درمان امور مامایی اردیبهشت 90. برای ثبت اطلاعات در برنامه نرم افزاری نظام مراقبت مرگ پریناتال ابتدا لازم است برنامه نرم افزار info-path وپرنیان.
فاکتورهای مهم در ایجاد یک مقاله علمی
الگوریتم ژنتیکی. تعریف  الگوریتم ژنتیکی، رویه ای تکراری است که راه حل های انتخابیش را بصورت رشته ای از ژنها که کروموزوم نامیده می شوند، بازنمایی می کند.
Professor: Dr. Ahmad Abdollahzadeh Amirkabir University of Technology, Computer Engineering and Information Technology Department Intelligent Systems Laboratory.
Definition. قانون بیز P(b|a) = P(a|b)P(b)/P(a) P(b|a) = P(a|b)P(b)/P(a) این قانون برای استنتاج آماری استفاده می شود. این قانون برای استنتاج آماری استفاده.
Decision Tree.
استاد درس: آقای دکتر عبدالله زاده توسط: اسماعیل رضایی ‪
فایل پردازی در C File based Programming in C. انواع فایل متنی –سرعت بالا –حجم کمتر –امکان دسترسی تصادفی –حفظ امنیت داده ها دودویی (باینری) –امکان باز.
PHP Hypertext per processor کار می کند؟ PHP چگونه
1 Network Address Translation (NAT). 2 Private Network شبکه خصوصی شبکه ای است که بطور مستقیم به اینترنت متصل نیست در یک شبکه خصوصی آدرس های IP به دلخواه.
1 بنام خدا زبان برنامه نویسی C (21814( Lecture 14 Structures.
COMP519: Web Programming Autumn 2007 Perl Tutorial: The very beginning A basic Perl Program The first line Comments and statements Simple printing Running.
Database Laboratory: Session #4 Akram Shokri. DB-Lab 2 Lab Activity You must already created all tables You have to have inserted proper data in tables.
به نام خدا برنامه سازی سمت سرور (php)
موضوع: دبير مربوطه: آموزشگاه : اجرا : عبارتهای جبری خانم مقصودی
تمام اسب ها همرنگ هستند! Basis: h = 1 We have only one horse. Clearly all horses in the set are the same color. Inductive hypothesis: In any set of up.
مظفر بگ محمدی دانشگاه ایلام Generics. کدهای عمومی 2 یکی از اهداف OOP ایجاد قابلیت نوشتن برنامه های عمومی با قابلیت استفاده ی مجدد است. کدهای چندریخت تا.
پیاده سازی کنترلر PC/104. Contents PC/104 پیاده سازی کنترلر HILتست 1.
آشنايي با سيستم اعداد.
[c.
تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86
مدیریت اطلاعات و داده های سازمان یافته
تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86
قالب ها قالب یکی از ویژگی های قدرتمند زبان C++ است.با استفاده از قالب ها می توان مجموعه کاملی از توابع مرتبط به هم (توابع همنام ) را که توابع قالب نام.
تمرین هفتم بسم الله الرحمن الرحیم درس یادگیری ماشین محمدعلی کیوان راد
بنام خدا زبان برنامه نویسی C (21814( Lecture 2 Chapter 3
ویژگی های DHCP جلوگیری از Conflict سرعت بخشیدن به کارها مدیریت متمرکز
بنام خدا زبان برنامه نویسی C (21814( Lecture 12 Selected Topics
SY800 router mode [AD-14-TB ].
اسلایدهای فصل سوم کتاب سیلبرشاتز دانشکده مهندسی کامپیوتر دانشگاه شریف
آشنایی مقدماتی با نرم افزار Endnote X4
Address: Times New Roman, size 34
آزمایشگاه پایگاه داده ها قیود در جداول یک پایگاه داده در SQL Server
Odd-even merge sort مرتب سازی.
چگونه بفهمیم آیا ژورنالی ISI است؟ ایمپکت فاکتور دارد یا خیر؟
به نام خدا.
فصل دوم جبر بول.
بررسی قطبش در لیزر های کاواک عمودی گسیل سطحی(vcsel)
SSO Single Sign-on Systems
آشنایی با پایگاه داده mysql
خودآموز آسان ویکی‌پدیای فارسی
آموزش کرک کردن نرم افزار ACTIVE HDL
Tree Sort.
مدارهای منطقی فصل سوم - خصوصیات توابع سويیچی
آشنایی مقدماتی با نرم افزار Endnote X4
ASP.NET فرناز شریعت.
مهندسی فناوری اطلاعات ارائه دهنده دکتر سيد امين حسيني
تهیه و تنظیم: فاطمه قاسمی دانشگاه صنعتی شریف – پاییز 86
Bucket sort اكرم منوچهري زهرا منوچهري
راهنمای استفاده از ابزار Mailings در Ms Word
جلسه ششم حفاظت در سیستم عامل
آشنایی مقدماتی با نرم افزار Endnote X4
نام درس: طراحی و پیاده سازی زبانهای برنامه سازی
بسم الله الرحمن الرحیم هرس درخت تصمیم Dr.vahidipour Zahra bayat
آشنایی مقدماتی با نرم افزار Endnote
کاربرد کامپیوتر در داروخانه
جستجوی منابع الکترونیک
به نام خدا Koha برنامه.
سمینار SharePoint رانندگی در بزرگراه پرتال ها
فصل ششم مدارهای ترتیبی.
به نام یکتای دانا فصل اول: متدها و قواعد.
فصل 8 –Process and Deployment
نسبت جرم فرمولی ”جرم اتمی و فرمول تجربی
عنوان مقاله نویسنده اول1، نویسنده دوم2، نویسنده سوم3، نویسنده چهارم4
kbkjlj/m/lkiubljj'pl;
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
مباني كامپيوتر و برنامه سازي Basics of Computer and Programming
آشنایی با فرایند داده کاوی در نرم افزار R گروه داده کاوی دایکه داود دوروش تابستان 6139.
سد خونی- مغزی. تکنولوژی نمایش فاژی و کاربرد آن  مقدمه و تاریخچه  نمایش فاژی در تولید آنتی بادی مونوکونال.
Presentation transcript:

دانشکده مهندسی کامپیوتر Perl مهشید رهنما دانشکده مهندسی کامپیوتر دانشگاه صنعتی شریف پاییز 84

عناوین بخش ها بخش اول : معرفی Perl بخش دوم : آشنایی با برنامه نویسی Perl و واسط درگاه مشترک(CGI)

معرفی Perl

معرفی Perl کوته نوشتی از : Practical Extraction and Report Language ( یا Pathologically Eclectic Rubbish Lister ) Perl توسط آقای Larry Wall ساخته شده است که زبان شناس بوده اند نه متخصص کامپیوتر! کد آن شبیه به کد زبان C است.

محاسن Perl یک زبان ساده و در عین حال کامل زبانی بین زبان های سطح بالا (Pascal, C ) و زبان های برنامه نویسی Shell ( sh, sedو awk) awk = Aho, Weinberger, Kernighan sed = Stream Editor

محاسن ( ادامه.) نبشته های Shellها (shell scripts)معمولاً در فایل های کوچک که به یکدیگر اشاره می کنند نوشته می شوند ولی Perl به چنین توانایی در قالب یک فایل دست یافته است. یک زبان گزارشی (reporting Language) در اوایل 1990 ،Perl باعث تبدیل سریع بسیاری ازاسناد متنی به فرمت HTML شد و درگسترش وب نقش مهمی را ایفا کرد.

Perlمعایب زبان شلوغی محسوب می شود. برای پیاده سازی یک عمل مشخص ساختار های گوناگونی را پیشنهاد می کند.( برای مثال 5 راه برای پیاده سازی یک جمله شرطی دارد.) نا خوانا ست. نمی توان برنامه های نوشته شده به زبان Perl را به شکل اجرایی امن (opaque binary) در آورد و به همین دلیل نمی توان محصولی تجاری ایجاد کرد که همه جوانب آن برای تولید کننده محفوظ باشد.

خصوصیات Perl Perl متداول ترین زبان در برنامه نویسی واسط درگاه مشترک( CGI) در دو قالب عمل می کند: System Administration Internet Programming Perl زبان برنامه نویسی برای صفحات پویای وب Perl یک زبان نبشته نویسی (Scripting language) انتخاب بسیاری از برنامه نویسان برای کاربردهای(Applications) با سایز کوچک تا متوسط زبانی بر مبنای مفسر (interpreted base)

دسترسی به Perl بر روی چارچوب های مختلف عمل می کند اما منشاء آن از Unix است. هم Perl و هم کد آن مجانی در اختیار همه هست. http://www.perl.com http://www.activestate.com بهترین نسخه برای کار با Perl نسخه Perl 5.8.0 است که در July 2002 منتشر شد.

Perl متداول ترین زبان برنامه نویسی واسط در گاه مشترک(CGI)

مقایسه روش واسط درگاه مشترک با دیگر زبان های نبشته نویسی مقایسه روش واسط درگاه مشترک با دیگر زبان های نبشته نویسی

آشنایی با برنامه نویسی در Perl

مقدمه برنامه های به زبان Perl باید با پسوند .pl و برنامه های CGI که به زبان Perl نوشته می شوند باید با پسوند .cgi ذخیره شوند. Perl را در هر ویرایشگر متن از جمله NotePad و یا TextPad می توان نوشت.

نحوه اجرای Perl نماد تصویری(Icon) فایل های از نوع PL برای اجرای Perl بعد از نصب آن بر روی دستگاه ، باید در Command window به صورت زیر عمل کرد: D:\perl5\test\MPListrings\ perl filename.pl برای اجرای CGI های نوشته شده باید آنها را در folder ای با نام cgi-bin در سمت کارگزار ذخیره نموده و از طریق آدرس زیر در سمت کاربر اجرا کرد: http://www.servername.com/cgi-bin/filename.cgi

اشنایی ابتدایی توضیحات اضافی در این زبان با نماد # مشخص می شوند مانند خط اول این برنامه. در پایان جملات نیز نماد ;ضروری است. STDIN یک خط ورودی را نشان می دهد که به شکل استاندارد در این زبان استفاده می شود و شامل هر نوع متغیری که در هنگام ورود ممکن است وارد سازید می باشد.

متغیر ها در این زبان برای تعریف متغیر احتیاجی به بیان نوع متغیر نیست: $foo = 1; $name = "Fred"; $pi = 3.141592; برنامه ای ساده که ورودی را ئریافت کرده و در خروجی چاپ می کنند: 1: #!/usr/local/bin/perl 2: $inputline = <STDIN>; 3: print( $inputline );

متغیر ها در زیر تعدادی از صورت های نادرست تعریف متغیر را می بینید: variable # the $ character is missing $ # there must be at least one letter in the name $47x # second character must be a letter $_var # again, the second character must be a letter $variable! # you can't have a ! in a variable name $new.var # you can't have a . in a variable name متغیر های این زبان Case Sensitive هستند یعنی متغیر های زیر با هم متفاوت هستند: $VAR $var $Var

متغیر ها مثالی از برنامه ای که مایل را به کیلومتر تبدیل می کند: 1: #!/usr/local/bin/perl 2: 3: print ("Enter the distance to be converted:\n"); 4: $originaldist = <STDIN>; 5: chop ($originaldist); 6: $miles = $originaldist * 0.6214; 7: $kilometers = $originaldist * 1.609; 8: print ($originaldist, " kilometers = ", $miles, 9: " miles\n"); 10: print ($originaldist, " miles = ", $kilometers, 11: " kilometers\n");

داده ها #!/usr/bin/firstExample.pl print "Hello" . " " . "world\n"; print "hi there " . 2 . " worlds!" ."\n"; print (("5" + 6) . " eggs\n" . " in " . " 3 + 2 = " . ("3" + "2") . " baskets\n" );

جمله و token یک جمله برای مفسر این زبان یک عمل است که باید انجام شود و یک برنامه می تواند به صورت مجموعه ای از جمله ها در نظر گرفته شود که در یک زمان اجرا می شوند. زمانی که مفسر این زبان یک جمله ببیند آن را به قسمت های کوچک تری تبدیل می کند که به عنوان مثال: $inputline , = , <STDIN> , and ; هریک از این بخش های کوچکتر token نامیده می شود.این بخش ها با علامت فاصله خالی مشخص می شوند اما تعداد آنها در این کار نقشی ندارد.

عملگر ها

اعمال حسابی بر روی متغیر ها $var = 17 + 5; $var = 17 + 5 - 3; $var1 = 11; $var2 = $var1 * 6;

جملات شرطی

جملات شرطی (2) خروجی برنامه بازای کلمه ورودی Rahnama

حلقه ها تعریف حلقه ها در Perl مانند زبان های دیگر شامل انواع مختلفی از قبیل While ، For ، Until و.... است. for ($n = 1 ; $n < $max ; $n += 2) { $sum += $n; } until ($n >= $max) { $sum += $n; $n += 2; } while ($n < $max) {

مقایسه ساختار های کنترلی Perl و C Perl (braces required) the same if () { ... } if (! ) { ... } unless () { ... } different } else if () { ... } } elsif () { ... } while () { ... } for (aa;bb;cc) {...} foreach $v (@array){... } break last continue next similar 0 is FALSE 0, "0", and "" are FALSE != 0 is TRUE anything not false is TRUE

آرایه ها یک لیست مجموعه ای از داده های منظم است و یک متغیر که لیست را معرفی می کند آرایه گویند. برای تعریف آرایه و یا دسترسی به کل آن از نماد @ استفاده می شود. @ARGV برای دسترسی به یک عضو از آرایه : $ARGV[0] برای کار با آرایه می توان توابعی تعریف کرد و یا از توابع آماده مثل sort, reverse, push, pop استفاده کرد.

Hash hash را آرایه شرکت پذیر (Associative array) هم می گویند. چیزی می توانند باشند ولی درنهایت آن ها به شکل رشته در می آیند. برای معرفی hash و اشاره به کل آن از نماد % استفاده می کنیم.

Hash (2)

باز کردن فایل در Perl خواندن از فایل: open (filevar, filename) ; open(FILE1, "/u/jqpublic/file1"); خواندن از فایل: $line = <MYFILE>; مثالی از کاربا فایل ها: 1: #!/usr/local/bin/perl 2: 3: if (open(MYFILE, "file1")) { 4: $line = <MYFILE>; 5: while ($line ne "") { 6: print ($line); 7: $line = <MYFILE>; 8: } 9: }

جملات منظم(الگو) (Regular expressions (pattern)) کلاس رشته هایی که شامل حرف نباشند: [^A-Za-z] کلاس اعداد در مبنای هشت: [01234567] $x = "01239876AGH"; if ( $x =~ /^0[1-9]{4,}/ ) { print "yes1\n"; } if ( $x =~ /[A-Z]{3}$/ ) { print "yes2\n"; } if ( $x =~ /^.*[A-Z]{4}$/ ) { print "yes3\n"; }

Pattern Matching Perlعملگر های بسیاری برای کار با رشته ها دارد : عملگر آزمایش وجود عبارتی خاص در یک رشته:( =~ ) $result = $var =~ /abc/; نتیجه این عملگر به صورت درست و نادرست است.

Pattern Matching عبارت /de+f/ با هر یک از رشته های زیر matche می شود: عملگر های + و [ ] نیز برای کار با رشته ها به صورت زیر عمل می کنند: عبارت /de+f/ با هر یک از رشته های زیر matche می شود: Def deef deeef deeeeeeef عبارت زیر با def or dEf ، matche می شود: /d[eE]f/

تعریف زیر برنامه ها و توابع sub max { if ( $x > $y ) { $x } else { $y } } $x = 10; $y = 11; print &max . "\n"; از تابع die تعریف شده در زبان Perl برای خاتمه دادن به توابع و از warn برای اخطار دادن در مواقع لازم در توابع استفاده می شود.

Perl پیشرفته کار با Database و ارتباط با ODBC برنامه نویسی شئ گرا

مثالی از یک برنامه CGI

مثالی از CGI

iran

منابع “ Mastering ™ Perl ™ 5 ” by Eric C. Herrmann ,published by Sybex , 1999. “ A Little Book on Perl” by Robert W . Sebesta, Published by Prentice Hall ,2000. “ CGI Programming on the World Wide Web ” by Shishir Gundavaram , 1996. “Perl 5 by Examples” by David Medinets, 2000. www.perl.org www.oreilly.com www.softlookup.com/tutorial/cgi_perl/ch19.asp

از توجه شما سپاس گزارم. 