پروژه طراحی وب سایت املاک

مقدمه
وب، اينترنت، سايت و … كمتر كسي است كه امروزه با اين لغات آشنا نباشد يا حداقل آنها را نشنيده باشد، مفاهيمي كه تا چندي پيش تنها براي افراد محدودي جا افتاده و با معنا بود. اينترنت روز به روز در حال گسترش است و گويي وب، تارهاي عنكبوتيش را به همه جاي اين هستي گسترانده است، اگر چه به كشور ما كمي دير رو آورده ولي اينجا هم بسرعت در جاده توسعه قدم بر مي دارد.

در كشورهاي صنعتي، با وجود اين پديده، ديگر كمتر كسي است كه براي خريد روزمره عازم بازار شود، كمتر كسي است كه براي پيدا كردن كتاب مورد نظر خود، كليه خيابانهاي شهر را زير پا بگذارد، يا براي جابجايي حسابهاي مالي خود روانه بانك شود و هزاران هزار فعاليت ديگر كه خروج افراد از منازل يا محل كار خود را از بين مي برد كه اين خود سر منشاُ ميلياردها ميليارد صرفه جويي مالي و از همه مهمتر صرفه جويي در كالايي كه قيمتي براي آن نيست، زمان …. كه باز متاٌسفانه يكي از عوامل عقب ماندگي كشورهاي جهان سوم از جمله كشورمان، عدم توجه به همين طلاي نامرئي است.

دانشگاههاي يك كشور هميشه سمبل برداشتن اولين قدمها در راه پيشرفت و توسعه مي باشد در دانشگاهي كه سالها علم كامپيوتر تدريس مي شود، هر دانشجو در شروع ترم بايد درگير كاغذ بازي براي انتخاب واحد و ثبت نام باشد و در پايان هر ترم نيزبا صرف هزينه هاي مالي و تلف كردن وقت خود، راهي ساختمان دانشگاه مي شود تا بتواند استاد خود را بيابد و اعتراض خود را نسبت نمره ي اعلامي به وي ابلاغ نمايد و همه اين تلفات مالي و زماني هنگامي به اوج خود مي رسد كه بخواهد پروژه يا تكليفي را تحويل استاد نمايد.
حضور به موقع در راٌس ساعت تعيين شده براي تحويل پروژه، ساعتها انتظار براي رسيدن نوبت وي، تجمع در ميان سالن مجاور كلاسهايي كه در همان لحظه افراد ديگري مشغول فراگرفتن علم در آنجا مي باشند و مشكلاتي از اين قبيل…
چرا عليرغم گسترش ارتباطات جهاني كه بواسطه آن امروزه دهكده ناميده مي شود و در دانشگاهي كه حدود ۱۰ سال در آن اينترنت تدريس مي شود اينچنين مشكلاتي بايد وجود داشته باشد؟
امروزه كه هر فردي با داشتن يك خط تلفن و يك كامپيوتر مي تواند به اقصي نقاط جهان متصل شود و اطلاعات مورد نياز خود را برداشت نمايد يا دانسته هاي خود را به ديگران ابلاغ نمايد، وجود چنين مشكلاتي مضحك مي نمايد.
يكي از راههاي مفيد و مقرون به صرفه در جهت حل مشكلات مذكور، ايجاد يك سايت اختصاصي براي هر كدام از اساتيد دانشگاه است. محيطي نرم افزاري بر روي شبكه جهاني اينترنت كه هر يك از مدرسين مي توانند اطلاعات مورد نياز دانشجويان را بدون مراجعه مستقيم آنان در اختيارشان بگذارد.

 

مفاهيم اوليه برنامه نويسي در دات نت ( بخش اول )
دات نت محيطي جديد بمنظور طراحي، پياده سازي و اجراي برنامه هاي کامپيوتري را در اختيار طراحان و پياده کنندگان نرم افزار قرار مي دهد. با استفاده از پلات فرم فوق ، مي توان بسرعت اقدام به پياده سازي نرم افزار نمود.
برنامه هاي توليده شده ، امکان استفاده از پتانسيل هاي محيط Common Language Runtime) CLR ) را خواهند داشت . آشنائي با مفاهيم اوليه برنامه نويسي در محيط فوق ، داراي اهميت خاص خود بوده و سرعت در استفاده مطلوب از محيط فوق ، را بدنبال خواهد داشت . در مقالاتي که در اين زمينه ارائه خواهد شد به بررسي مفاهيم اوليه برنامه

نويسي محيط فوق ، خواهيم پرداخت . در اين راستا ، در ابتدا با نحوه نوشتن يک برنامه آشنا و در ادامه به تشريح برخي از مفاهيم مهم در اين زمينه ، خواهيم پرداخت .
نوشتن يک برنامه در فريمورک دات نت
تمامي زبانهاي حمايت شده در دات نت ، از سيستم نوع يکسان ، کتابخانه کلا س فريمورک مشابه و CLR استفاده خواهند کرد . بدين ترتيب، تمامي برنامه هاي نوشته شده با يکي از زبانهاي حمايت شده ، خصايص مشابهي را به اشتراک مي گذارند. شايد مهمترين تفاوت قابل توجه در رابطه با زبان هاي برنامه نويسي حمايت شده در دات نت ، به گرامر هر يک از آنها برگردد . ( در مثال هائي که در اين مقاله ذکر مي گردد ، از ويرايشگر Notepad ،در مقابل

ويژوال استوديو دات نت، استفاده شده است . مثال هاي ارائه شده به اندازه کافي ساده بوده تا بتوان بکمک آنان با فرآيندهاي ترجمه و اجراء ، بسرعت آشنا گرديد ).
نوشتن يک برنامه

براي نوشتن يک برنامه ساده در دات نت ، مراحل زير را دنبال مي نمائيم :
• فاز اول : ايجاد برنامه
• برنامه Notepad را فعال و پس از درج کدهاي زير آن را با نام Hello.vb ، ذخيره نمائيد .
يک برنامه نمونه نوشته شده به زبان VB.NET
Imports System
Public Class MainApp
Public Shared Sub Main( )
Console.WriteLine( “Welcome to .NET Programming ” )
End Sub
End Class
vbc Hello.vb
• فاز دوم : ترجمه و ايجاد يک فايل اجرائي
• براي اجراء برنامه ايجاد شده در مرحله قبل ، در ابتدا کمپايلر VB.NET را از طريق خط دستور و بصورت زير فعال مي نمائيم : ( دستور فوق را مي توان از طريق خط دستور ويندوز و يا خط دستور موجود در ويژوال استوديو ، فعال کرد )

در ادامه و پس از ايجاد فايل اجرائي (hello.exe ) ، امکان اجراي برنامه فراهم مي گردد.

استفاده از Namespace
با استفاده از VB.NET ، مي توان به کلاس ها مراجعه و از آنان استفاده کرد . در مثال زير ، يک نمونه از کلاس System.Io.FileStream ، ايجاد شده است .
Dim aFileStream As System.IO.Filestream
مراجعه به Namespace هاي مورد نياز در يک برنامه روشي مناسبتر در اين زمينه است . با استفاده از namespace ، ضرورتي به توصيف تمامي مراجعات به کتابخاته کلاس ، وجود نخواهد داشت .
Imports System.IO
…..

Dim aFileStream As Filestream
مثلا” براي دستيابي به اشياء System ، مي بايست از Name
تعريف namespace و کلاس
VB.NET ، امکانات حمايتي لازم در خصوص ايجاد Namespace هاي خاص و کلاس هاي مربوط به آن را ارائه مي نمايد. (نکته : مدل زير يک روش عمومي براي نامگذاري namespace است ) :
CompanyName.TechnologyName
.For Example:
Microsoft.Office
namespace در VB.NET
در VB.NET با استفاده از عبارت namespace مي توان يک namespace را تعريف کرد . با استفاده از namespace تعريف شده ، امکان کپسوله نمودن کلاس هاي ايجاد شده ، فراهم خواهد شد.
Namespace CompVB
Public Class StringComponent
….
End Class
End Namespace
برخي از ويژگي هاي namespace عبارتند از :
• namespace مي تواند درون ساير namespace ها ، مستقر گردند .
• يک namespace مي تواند در چندين فايل تعريف گردد .
• يک فايل حاوي کد مبداء مي تواند چندين namespace را تعريف نمايد.
نقاط ورود ، حوزه ، تعاريف
هر برنامه اجرائي مي بايست شامل يک نقطه ورود خارجي باشد . مکان فوق ، محلي را که برنامه اجراي خود را از آنجا آغاز مي نمايد ، مشخص مي نمايد..در VB.NET تمامي کد مي بايست در متدهاي يک کلاس قرار بگيرد.
نقاط ورود در VB.NET
بمنظور ارائه کد نقطه ورود در VB.NET ، در ابتدا مي بايست

 

يک ماژول و يا يک کلاس مشخص گردد .
Public Module modMain

Public Class clsMain
در ادامه مي بايست نقطه ورود براي برنامه ، مشخص گردد. نقطه ورود ، مي بايست بعنوان يک متد عمومي که main ناميده مي شود ، در نظر گرفته شود.( کمپايلر به دانش فوق نياز خواهد داشت ) . در يک کلاس ، متد فوق مي بايست بصورت اشتراکي تعريف گردد .امکان تعريف متد فوق در يک ماژول بصورت اشتراکي ، وجود نخواهد داشت . نحوه تعريف ( مشخص نمودن ) نقاط ورود براي يک ماژول و يا يک کلاس ، بصورت زير است :
Public Module modMain
Public Sub Main( )

End Sub

End Module

Public Class clsMain
Public Shared Sub Main( )

End Sub
End Class

حوزه
VB.NET ، از نقطه بعنوان يک عملگر resolution حوزه ، استفاده مي نمايد . مثلا” در صورت استفاده از متد WriteLine مربوط به کلاس Console ، از گرامر Console.WriteLine ، استفاده مي شود.
تعاريف
در VB.NET ، الزامي به تعريف يک متغير قبل از استفاده از آن نمي باشد . پيشنهاد مي گردد که در چنين مواردي متغيرها با صراحت تعريف گردند. در اين راستا مي توان از عبارت options ، استفاده کرد. بمنظور ايجاد نمونه اي از يک شي ، از New استفاده مي گردد. مثال زير ، نحوه تعريف يک شي از نوع Comp در namespace با نام Lib و با نام MyComp را نشان مي دهد .
Dim myComp As New Lib.Comp( )
کنسول ورودي و خروجي
مي توان از کلاس Console ، مربوط به CLR وابسته به System Namespace ، براي ورودي و خروجي هر نوع رشته و مقادير عددي توسط متدهاي Read , ReadLine و Write,WriteLine استفاده کرد . برنامه زير، نحوه نمايش يک رشته در خروجي را نشان مي دهد .
برنامه نمونه :
Imports System
Public Class MainApp
Public Shared Sub Main( )
Console.WriteLine( “Welcome to .NET Programming ” )
End Sub
End Class

ترجمه و اجراء يک برنامه فريمورک دات نت
اکثر جنبه هاي برنامه نويسي در دات نت براي تمامي زبانهاي سازگار ، يکسان است . هر کمپايلر حمايت شده باعث توليد کدهاي “خود تشريح ” MSIL)Microsoft Intermediate Language) ، مي گردد . تمامي کدهاي مديريت يافته ( Managed code ) با استفاده از CLR)Common Language runtime) ، اجراء خواهند شد . CLR ، امکان يکپارچگي بين برنامه ها ، مديريت اتوماتيک حافظه ، برخورد يکدست با موارد خاص و استثناء ، امنيت پيشرف

 

ته و در نهايت يک مدل برنامه نويسي ساده و همگن را ارائه مي نمايد.
گزينه هاي کمپايلر
فريمورک دات نت، داراي يک کمپايلر خط دستوري براي VB.NET است ( vbc.exe ) . براي ترجمه برنامه Hello.vb ، بکمک کمپايلر فوق ، از دستور زير استفاده مي شود :
vbc Hello.vb
گرامر فوق، باعث فراخواني کمپايلر VB.NET مي گردد. در اين مثال خاص، صرفا” نام فايل مورد نظر براي کمپايلر مشخص شده و در ادامه ، کمپايلر فايل اجرائي را توليد خواهد کرد ( Hello.exe ) .
گزينه هاي خط دستور
در VB.NET ، مي توان ليست کاملي از گزينه هاي همراه کمپايلر را با استفاده از ?/ ، مشاهده نمود ( ?/ Vbc ) . از گزينه هاي مفيد در اين زمينه، مي توان به سوئيچ out/ ، ( نام فايل خروجي را مشخص مي نمايد) و سوئيچ target/ ، ( نوع کد مقصد را مشخص مي نمايد”) ، اشاره کرد. بصورت پيش فرض ، نام فايل خروجي مشابه نام فايل ورودي و با انشعاب exe . ، خواهد بود. مقدار پيش فرض براي تعيين نوع کد مقصد ، يک برنامه اجرائي است ( سوئيچ t/ ، داراي عملکردي معادل با سوئيچ target/ است ). دستور زير نحوه استفاده از سوئيچ هاي فوق را نشان مي دهد :
vbc /out :hello.exe /t:exe hello.vb
استفاده از گزينه کمپايل reference/
در زمان مراجعه به ساير اسمبلي ها ، مي بايست از سوئيچ reference/ ، استفاده گردد . گزينه فوق اين امکان را براي کمپايلر فراهم مي آورد که اطلاعاتي را ايجاد و در کتابخانه هاي مشخص شده استقرار تا زمينه استفاده از آنان براي کد مورد نظر ( در حال ترجمه ) ، فراهم گردد. مثال زير نحوه ايجاد يک برنامه اجرائي از طريق خط دستور و با استفاده از reference / ، را نشان مي دهد . ( عملکرد سوئيچ r / مشابه reference / است ).
Vbc / r:assembll.dll , assemb2.dll / out :output.exe input.vb
در بخش دوم به بررسي فرآيند اجراء مديريت يافته ( اداره شده ) ، خواهيم پرداخت .
صفحات سرور فعال (ASP)
علت بررسي فناوري هاي قبل از ASP.NET ، به جزئيات پياده سازي ASP.NET و فناوري قبل از آن، يعني ASP بستگي دارد. درك ASP مستلزم درك ISAPI و درك ASP.NET مستلزم درك ASP است.
وقتي IIS 2.0 به عنوان بخشي از ويندوز NT 4.0 مطرح شد، مايكروسافت، فناوري جديدي را به نام Denali ارائه داد. اين فناوري در دوره فعال بودن شركت مايكروسافت ايجاد شد و به همين دليل نام آن صفحات سرور فعال (ASP) انتخاب گرديد. چندين نسخه از ASP عرضه شد، مثل ASP 2.0 و IIS 4.0 در ويندوز NT ، ASP 3.0 و IIS 5.0 در ويندوز ۲۰۰۰٫
ASP نوع متفاوتي از محيط توسعه است. اولاٌ يك محيط اسكريپتي است. صفحه را براحتي ويرايش مي كنيد، آنرا در پوشه مناسبي قرار مي دهيد

و مجوزهاي مناسبي به آنها اختصاص مي دهيد. اين صفحات توسط مرورگر فراخواني مي شوند. ثانياٌ كد ASP مي تواند با HTML تركيب شود.
كد ASP معمولاٌ در ويژوال بيسيك نسخه اسكريپ

تي (VBScript) نوشته مي شود، ولي از JVScript نيز مي توان استفاده كرد.

مزاياي ASP
فناوري ASP به سرعت مورد توجه قرار گرفت، زيرا كار دشوار ساخت صفحات پويا را به راحتي انجام داد. ايجاد برنامه هاي كاربردي CGI و ISAPI چندان دشوار نبود، ولي استفاده از ASP بسيار آسان است.
به طور پيش فرض، ASP از VBScript استفاده مي كند. ميليون ها نفر با VBScript آشنايي دارند كه از طريق ASP مي توانند وارد دنياي اينترنت شوند. به همين دليل، ASP راه مناسبي براي ساخت صفحات وب است.
علاوه بر اين، از طريق ADO امكان دستيابي آسان به بانك اطلاعاتي را فراهم مي سازد. براي ساخت محتويات پويا، بايد آن محتويات را از جايي دريافت كرد كه ADO اين امكان را فراهم مي كند. توجه داشته باشيد كه ADO يك واسط نرم افزاري است كه مي تواند با سيستم هاي مديريت بانك اطلاعاتي مثل اكسس و SQL Server ارتباط برقرار كند.
مدل برنامه نويسي ASP اجازه نوشتن كد و اجرا را مي دهد و نيازي به دنبال كردن مراحل كامپايل و نصب نيست. همان طور كه خواهيد ديد، ASP.NET نيز از همين روش استفاده مي كند.
معايب ASP
فناوري ASP ابزار قدرتمندي براي توليد برنامه هاي بزرگ وب است. وب سايت هايي مثل www.microsoft.com و بسياري از سايت هاي بزرگ و كوچك ديگر، با موفقيت از ASP استفاده كردند.
اولين چيزي كه در مورد ASP مطرح است، سربار ناشي از تفسير كد VBScript يا JVScript در هر درخواست است.
در اغلب سايت هاي متوسط ASP، بيشتر گلوگاه ها ناشي از دستيابي به بانك اطلاعاتي و به هنگام سازي آن است تا موتور اسكريپتي ASP . نسخه هاي بعدي ASP در ارائه سرويس به صفحات اسكريپتي كارآمدتر شدند.
ASP محيط برنامه نويسي قابل اعتماد، قدرتمند و كاملاٌ مقياس پذيري را براي بانك اطلاعاتي فراهم نمي كند. انواع در ASP فاقد نوع هستند. وقتي مقداري در متغيري قرار مي گيرد، نوع آن تعيين مي شود، ولي اين نوع دائمي نيست و قابل تغيير است. به اين ترتيب، احتمال بروز خطا بيشتر مي شود.
مسئله ديگر، توانايي تركيب HTML و اسكريپت است. به اين ترتيب، كدهاي اسكريپت در داخل HTML پراكنده مي شود. چون با هر اجراي ا

سكريپت بايد تعويض بستر صورت گيرد ( از HTML به VBScript و بر عكس)، كارايي آسيب مي بيند.

ASP.NET
وقتي ASP 3.0 به همراه ويندوز ۲۰۰۰ ارائ

ه شد، روشن شد كه آينده توليد نرم افزار به آينده وب گره خورده است. پس از آن شركت مايكروسافت نسخه جديد ASP را به نام ASP.NET ارائه كرد كه سهولت كد نويسي ASP را دارد، بطوري كه برنامه اي را مي نويسيد، در پوشه اي قرار مي دهيد، امتياز دستيابي براي آن تعيين مي كنيد و به راحتي قابل اجرا است. ASP.NET نو آوريهايي دارد كه منجر به تفكيك برنامه كاربردي از نمايش آن مي شود.
ASP.NET ويژگي هاي جديدي به ASP اضافه نمود و قابليت هاي آن را افزايش داد. ASP.NET فقط بهبود تدريجي ASP نيست، بلكه يك محصول كاملاٌ جديد است. ويژگي هاي ASP.NET عبارت اند از:
– محيط كاري NET محيط كاري NET معماري است كه ساخت برنامه هاي كاربردي وب و سنتي را آسان تر مي سازد.
– زبان مشترك زمان اجرا (CLR) زبان مشترك زمان اجرا، مجموعه اي از سرويس ها را براي تمام زبان هاي ASP.NET فراهم مي سازد. به عبارت ديگر، مجموعه اي از انواع مشترك را براي بسياري از زبان ها تهيه مي كند.
– زبان هاي كامپايلري ASP.NET با استفاده از زبان هاي كامپايلري كارايي پيشرفته اي را ارائه مي كند. زبان هاي كامپايلري به برنامه نويس اجازه مي دهند تا صحت برنامه را از نظر نحوي بررسي كند. ASP چنين امكاني را فراهم نمي كند، لذا ساده ترين خطاي نحوي نيز تا اولين اجرا مشخص نمي شود.
– زبان هاي جديد ويژوال بيسيك نت نسخه كاملاٌ جديدي از ويژوال بيسيك است كه نحو آن زيباتر مي باشد. C# ، زبان جديدي است كه مشابه با C++ و فاقد ويژگي هاي نا امن C++ است.
– ويژوال استوديو نت ويژوال استوديو نت محيط توسعه جديدي است كه در آن برنامه ها را به سرعت مي توان اجرا كرد.
– مولفه هاي جديد محيط كاري NET از انواع جديدي از مولفه ها پشتيباني مي كند كه در ASP وجود نداشته اند.
– فرم هاي وب ابزارهاي مناسبي براي ايجاد صفحات پويا هستند كه از طريق آنها مي توان ورودي هاي كاربر را دريافت كرد.
– سرويس هاي XML وب با استفاده از سرويس هاي XML وب مي توان خدماتي ايجاد كرد و سپس آنها را با استفاده از قراردادهاي استاندارد صنعت مهيا نمود.
– ADO.NET فناوري ADO در محيط كاري NET ، فناوري جديدي است كه موجب مي شود برنامه هاي كاربردي ASP.NET به راحتي به اط

لاعات موجود در بانك اطلاعاتي رابطه اي يا قالب هاي ديگري مثل XML دستيابي داشته باشند.

محيط .NET :

محيط Asp.net :

محيط VB.net :

آيا ASP.NET به مرورگر خاص وابسته است؟
ASP.NET يك برنامه سازي مستقل از مرورگر است. ASP.NET علاوه بر مرورگرهاي پركاربردي چون opera در جديدترين نگارش هاي اينترنت اكسپلرر و نت اسكيپ ناويگيتور نيز اجرا مي شود. به علاوه برنامه هاي كاربردي ASP.NET را به نگارش هاي قديمي تر اينترنت اكسپلرر و نت اسكيپ ناويگيتور تنزل مقام مي دهند. اين به معناي آن است كه اكثر كاربران اينترنت مي توانند از برنامه هاي كاربردي وب شما استفاده كنند بدون آنكه لازم باشد برنامه مخصوص مرورگر بنويسيد. اين ويژگي بار سنگيني را از دوش كساني كه در حال حاضر به ساخت وب مشغولند بر مي دارد. ولي همچنان بايد به خاطر داشته باشيد كه همه مرورگرها dhtm يا html پويا را به طور يكسان قبول نمي كنند. مثلاٌ نت اسكيپ نگارش ۴ تا ۴٫۷۵ اجازه نمي دهند خصوصيات متن، مانند رنگ و فونت، روي صفحه تغيير داده شوند مگر آنكه صفحه در مرورگر با گذاري مجدد شود. از سوي ديگر اينترنت اكسپلرر ۴ و بالاتر اجازه مي دهند متن روي صفحه تغيير داده شود. در زمان نوشتن برنامه سمت سرويس گيرنده هنوز بايد اين ناسازگاري ها و بسياري ناسازگاريهاي ديگر را در نظر گرفت.
وب سرور
وب سرور با استفاده از نرم افزار خاصي بنام IIS مي تواند به كاربران خدمات ارائه دهد. براي استفاده از ASP.NET ، كامپيوترتان بايد بعنوان يك وب سرور عمل كند. در واقع، وقتي بر روي كامپيوترتان در حال تست كردن برنامه هاي ASP.NET هستيد، مثل اين است كه كامپيوترتان با

مشتري راه دور اتصال اينترنت دارد. وقتي صفحه اي را تست مي كنيد، از طريقIIS صفحه به صفحه دستيابي داريد ( كه خدمات ASP.NET را ارائه مي كند) ، و HTML نهايي را از طريق انتقال HTTP بازيابي مي نمايد. تنها تفاوت شيوه انجام كار كامپيوترتان و وب سرور اين است كه كامپيوترتان صفحات وب خود را با امنيت كامل و به طور واقعي تست كنيد.
قبل از نصب نرم افزار Visual Studio NET كه بستر ASP.NET است، بايد IIS را در سيستم خود نصب كنيد.