نوشته شده توسط : افشین رفوآ

دوره کاربری Database و مدیریت در Oracle

آموزشگاه تحلیل داده



:: برچسب‌ها: آموزشگاه برنامه نویسی , آموزشگاه برنامه نویس , آموزش برنامه نویسی , آموزشگاه تحلیل داده , آموزش رایگان برنامه نویسی , لایتک ,
:: بازدید از این مطلب : 74
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0
تاریخ انتشار : چهار شنبه 7 مرداد 1394 | نظرات ()
نوشته شده توسط : افشین رفوآ

اگر نیازی به دریافت و دیدن رایگان فیلم و مقالات آموزشی و حتی کلاس آموزشی دارید کافی است کلیک کنید آموزشگاه تحلیل داده

 



:: برچسب‌ها: آموزشگاه برنامه نویسی,آموزشگاه برنامه نویس , آموزش برنامه نویسی , آموزشگاه تحلیل داده , آموزش رایگان برنامه نویسی , لایتک ,
:: بازدید از این مطلب : 115
|
امتیاز مطلب : 3
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : چهار شنبه 7 مرداد 1394 | نظرات ()
نوشته شده توسط : افشین رفوآ
تاریخ انتشار : سه شنبه 28 بهمن 1393 | نظرات ()
نوشته شده توسط : افشین رفوآ

چه چیزی در جاوا اسکریپ است؟

 آیا java script واقعا یک زبان برنامه نویسی سخت است که کسی که خواستار طراحی صفحات وب است باید از آن بترسد؟چگونه از آن استفاده کنیم؟امیدواریم در این آموزش ما قادر به پاسخگویی این سوالات برای شما باشیم.در حال حاضر جاوا اسکریپت در حدود چند سال است که در زمینه های مختلف وجود دارد.

مزیت اصلی آن تنها با کمی کار اضافه توسط توسعه دهنده ی وب برای اضافه کردن تعامل بیشتر بین وب سایت ها و بازدید کندگان آن است.

جاوا اسکریپت به مدیر وب سایت اجازه میدهد برای بالا بردن

  بازدهی سایت ازcssو html استفاده کند.

با این تعریف java script یک زبان برنامه نویسی در سمت سرویس گیرنده است. این به این معناست که مرورگر وب باید دستورات را در سمت کاربر اجرا کند.مخالف سرویس گیرنده، سرویس دهنده است که در php مشاهده میشود. کد های php  در سمت میزبان سرویس دهنده وب  اجرا میشوند.

از زبان قدرتمندjava script استفاده های زیادی(و شاید هم سو استفاده های!)زیادی میشود.

در زیر چند نمونه است که شما در گشت و گذار روزانه در وب ممکن است ببینید یا شاید هم نه:

·      ساعت

·      دنباله موس(یک پویانمایی در زیر موس وقتی که در سایت گردش میکنید.)

·      منو های بازشونده

·      پیغام های هشدار

·      پنجره Popup Windows

·      اعتبار سنجی داده های فرم html

بازنگری آموزش:

قبل ازآموزش شما باید یک دانش پایه از html داشته باشید،این آموزش اصولی از java script را پوشش میدهد که از اینجا و در تمام طول راه برای ساختن توابع java scriptاز آن استفاده میکنید.همچنین در طول این عمل آموزش،برخی از راهنمایی های خوب برنامه نویسی وجود خواهد داشت. ما توصیه می کنیم که شما با خواندن چند درس در روز و تمرین آنچه آموخته اید برای جذب موارد به آسانی استفاده کنید.

 

چگونه به صورت java script بنویسیم؟

اگرشما قبلا همیشه از css استفاده میکرده اید بسیار ساده تر میتوانید برخی از جملات java script را درک کنید.

سه مرحله مهم است که شما باید همیشه در هنگام ایجاد و یا استفاده از کد جاوا اسکریپت به دنبال آن باشید.

·      استفاده از تگ های برنامه نویسی که در java script مورد استفاده قرار میگیردبرای ارتباط با مرور گر.

·      نوشتن کد java script

·      تست برنامه

چیز های مختلف زیادی است که ممکن است به اشتباه در یک قطعه کد java وجود داشته باشد مانند:

خطاهای انسانی، مسائل مربوط به سازگاری مرورگر،یا تفاوت سیستم عامل ها، بنابرین وقتی که از java script استفاده میکنید  نتیجه کدها را بر روی طیف گسترده ای از سیستم ها و از همه مهمتر بر روی مرورگر های وب متفاوت امتحان نمایید.

اولین کد java script برای شما:

به پیروی از نمونه های کلاسیک بسیاری از آموزش های برنامه نویسی اجازه دهید از جاوا اسکریپت برای چاپ "Hello World" در مرورگر استفاده نماییم میدانیم که این زیاد جالب توجه نیست اما یک راه خوب برای توضیح همه موارد مورد نیاز برای انجام کاری در جاوا اسکریپت است.

 

HTML & JavaScript Code:

 

Display:نمایش در صفحه

Hello World!

 

 دراولین قدم با استفاده از یک کد که با تگ <SCRIPT> مشخص شده باید مرورگرصحبت کرد در مرحله بعد باید نوع کد را تنظیم نمود که برابر است با: "text/JavaScript" 

 

 

شما ممکن است متوجه شده باشید که انجام این کار شبیه به راه شما در cssاست که در آن صورت اینطور نوشته میشد:

 "text/css"

بعد از آن در تگ html از توضیحاتی استفاده کرده ایم که با تگ --!> شروع شده که اگر مروررگر ما java script را پشتیبانی نکند کد ما در متن ساده به کاربر نمایش داده نمیشود این نمونه باید با  "//-->" به پایان برسد زیرا  "//" 

بریک نمونه java script دلالت دارد.

 این خط برای جلوگیری مرورگر از خواندن کد به صورت HTML به جای یک قطعه از کد جاوا اسکریپت اضافه میشود.

Document.write در java script :

 درمرحله آخر از کد باید از تابعی که  Document.write

نامیده میشود استفاده کرد که یک رشته را در سند HTML خود می نویسد

Document.write  میتواند برای نوشتن متن و html و یا یک کمی از هر دو مورد استفاده قرار بگیرد. تصویب رشته معروف"Hello word!" از متن به تابع که آن را به روی صفحه نمایش چاپ میکند. نگران نباشید اگر شما به طور کامل نمی دانید که سند چگونه کار میکند در مورد توابع در درس بعد بحث خواهد شد.

به کد java بالا نگاه کنید و توجه داشته باشید که هیچ نقطه و ویرگول در پایان این بیانیه وجود ندارد  "document.write(Hello World!)"

 

چرا؟ در جاوا اسکریپت به استفاده از سمیکالن که به معنی پایان هر یک ازجملات است، نیازی نیست.

 

اگر شما یک برنامه نویس با تجربه هستید و ترجیح می دهید از سمی کالن استفاده نمایید آزاد به انجام این کار میباشید در java script با انجام این کار خرابی ایجاد نمیشود، تنها در زمانی از سمی کالن استفاده نمایید که در یک خط دو دستور نوشته شده باشد .

برای یادگیری بیشتر بر روی لینک زیر کلیک کنید.

آموزش java script



:: برچسب‌ها: آموزش جاوا اسکریپت , اموزش جاوا اسکریپت , آموزش طراحی سایت , آموزش java script ,
:: بازدید از این مطلب : 150
|
امتیاز مطلب : 5
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : سه شنبه 20 فروردين 1392 | نظرات ()
نوشته شده توسط : افشین رفوآ

 برای دانلود جدیدترین فیلم های برنامه نویسی مخصوصا برنامه نویسی زبان #C میتونین به سایت زیر مراجعه کنید.

دانلود فیلم آموزش سی شارپ



:: برچسب‌ها: دانلود فیلم آموزش برنامه نویسی , دانلود فیلم آموزش سی شارپ , فیلم اموزش سی شارپ , دانلود فیلم آموزش #C , فیلم آموزش #C ,
:: بازدید از این مطلب : 198
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0
تاریخ انتشار : یک شنبه 18 فروردين 1392 | نظرات ()
نوشته شده توسط : افشین رفوآ

کلید اصلی:

برای ایجاد یک ستون اصلی در sql از کلیدواژه ی PRIMARY KEY  باید استفاده کنید. مثال:

CREATE TABLE Persons

(

    PersonID int identity(1,1) PRIMARY KEY NOT NULL,

    FirstName nvarchar(20),

    LastName nvarchar(20) NOT NULL

);

محدودیت های کلید اصلی:

شما همچنین می توانید یک کلید اولیه به عنوان یک محدودیت ایجاد کنید،فرمولی که استفاده میشود به صورت زیر است.

CONSTRAINT PrimaryKeyName PRIMARY KEY(ColumnName)

و این یک مثال است:

CREATE TABLE Persons
(
    PersonID int identity(1,1) NOT NULL,
    FirstName nvarchar(20),
    LastName nvarchar(20) NOT NULL,
    CONSTRAINT PrimKeyPeople PRIMARY KEY(PersonID)
);

بر اساس یک کنوانسیون یا سنت اسمی که برای کلید اصلی انتخاب میشود به صورت(pk_table name) تعریف میشود،یک مثال:

USE Exercise2;
GO
 
CREATE TABLE Persons
(
    PersonID int identity(1,1) NOT NULL,
    FirstName nvarchar(20),
    LastName nvarchar(20) NOT NULL,
    CONSTRAINT PK_Persons PRIMARY KEY(PersonID)
);
GO

 

 

کلید خارجی:

برای ایجاد کلید خارجی در sql فرمول پایه ای که استفاده میشود به صورت زیر است:

CREATE TABLE Persons
(
    PersonID int identity(1,1) PRIMARY KEY NOT NULL,
    FirstName nvarchar(20),
    LastName nvarchar(20) NOT NULL,
    GenderID int NULL FOREIGN KEY REFERENCES Genders(GenderID)
);

محدودیت برای کلید خارجی:

برای ایجاد کلید خارجی محدودیتی وجود دارد، از کلید واژه ی CONSTRAINT استفاده کرده و ادامه به صورتی که در بالا گفته شد می باشد .

 مثال:

CREATE TABLE Persons
(
    PersonID int identity(1,1) PRIMARY KEY NOT NULL,
    FirstName nvarchar(20),
    LastName nvarchar(20) NOT NULL,
    GenderID int NULL CONSTRAINT FKGenders
                       FOREIGN KEY REFERENCES Genders(GenderID)
);

اضافه کردن یک ستون به جدول در sql

برای اضافه کردن یک ستون جدید به جدول از فرمول زیر استفاده میشود:

ALTER TABLE TableName
ADD ColumnName Properties

مثال:

ALTER TABLE StaffMembers
ADD Address varchar(100) NULL
GO

وقتی که این کد اجرا میشود یک ستون جدید به نام آدرس با نوع داده ای varchar با حداکثر طول 100 کاراکتر که به صورت خالی پر شده است باید به جدولی که StaffMembers نام دارد اضافه شود

برای استفاده از کد نمونه،ابتدا ویندوز یک پرس و جوی خالی نمایش میدهد و بعد یک قالب Explorer نمایش میدهد.برای گسترش گره ی جدول،در زیر جدول،بکشید ستون اضافه شده را و بیاندازید آن را در پنجره ی پرس و جو ها سپس پاک کنید بخش هایی از کد که مورد نیاز شما نیست و نگهداری کنید تنها بخش هایی را که مورد نیاز شما است در جدول تازه ایجاد شده.

 مثال:

--==========================================================================

-- Add column template

--

-- This template creates a table, then it adds a new column to the table.

--==========================================================================

USE

GO

 

-- Add a new column to the table

ALTER TABLE

        ADD

           

           

GO

 

 

برای یادگیری بیشتر SQL SERVER به لینک زیر رجوع کنید:

آموزش SQL

 


 



:: برچسب‌ها: آموزش sql , آموزش SQL SERVER , آموزش sql server 2008 , اموزش sql , آموزش SQL SERVER 2012 ,
:: بازدید از این مطلب : 252
|
امتیاز مطلب : 15
|
تعداد امتیازدهندگان : 3
|
مجموع امتیاز : 3
تاریخ انتشار : پنج شنبه 24 اسفند 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

 ایجاد پایگاه داده

برای ایجاد پایگاه داده از فرمول زیر استفاده کنید:

CREATE DATABASE BethesdaCarRental;

اگر می خواهید نام پایگاه داده بصورت کلمات مختلف باشد آن کلمات را بصورت زیر در براکت می گذاریم:

CREATE DATABASE [Bethesda Car Rental];

برای شروع از یک نمونه ، کد پنجره پرس و جو Query را باز کرده سپس از منوی view  پنجره Template Explorer را باز می کنیم و قسمت Database را گسترش Expand می دهیم و به قسمت Create Database را در پنجره query , drag می کنیم

-- =============================================
-- Create database template
-- =============================================
USE master
GO
 
-- Drop the database if it already exists
IF  EXISTS (
        SELECT name 
               FROM sys.databases 
               WHERE name = N''
)
 
CREATE DATABASE 
GO

یا به طور عینی برای ایجاد یک database  , Microsoft SQL Server Management Studio  را باز می کنیم در پنجره Object Explorer قسمت نام سرور را expand می کنیم تا به نود Database برسیم سپس روی Databases کلیک راست کرده و روی New Database  کلیک می کنیم

 

در جعبه متن نام، نام مورد نظر از پایگاه داده را وارد کنید به عنوان مثال

 

سپس خواص دیگر از پایگاه داده جدید را مشخص کنید:

 

برای یادگیری بیشتر sql به سایت زیر برین:

آموزش SQL Server



:: برچسب‌ها: آموزش sql , آموزش SQL SERVER , آموزش sql server 2008 , آموزش SQL SERVER 2012 , آموزش sql server 2008 r2 ,
:: بازدید از این مطلب : 201
|
امتیاز مطلب : 9
|
تعداد امتیازدهندگان : 3
|
مجموع امتیاز : 3
تاریخ انتشار : پنج شنبه 5 بهمن 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

بانک پروژه دانشجويي و مهندسي نرم افزار : انواع پروژه برنامه نويسي و تحقیق و پایان نامه را بصورت رايگان در سايت زير بيابيد

 

لينك سايت:    پروژه مهندسی نرم افزار                           پروژه  دانشجويي



:: برچسب‌ها: پروژه دانشجويي , دانلود سورس , دانلود رایگان پروژه , پروژه کامپیوتر , دانلود رایگان پروژه دانشجویی , پروژه برنامه نویسی , پروژه مهندسی نرم افزار , سفارش پروژه پایان نامه , بانک پروژه , پروژه رایگان , مرکز دانلود پروژه , تحقیق , جزوه و مقالات دانشجویی ,
:: بازدید از این مطلب : 173
|
امتیاز مطلب : 5
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : سه شنبه 5 دی 1398 | نظرات ()
نوشته شده توسط : افشین رفوآ

لينكي كه براتون مي گذارم مربوط به سايتي است كه اين سايت پر از قالب و Template هاي جديد و رايگان از جمله جوملا و ورد پرس و ...مي باشد

حتما اين سايت رو ببينيد :

                                                       لينك سايت: قالب هاي رايگان سايت



:: برچسب‌ها: قالب جوملا , قالب هاي رايگان براي جوملا , قالب وردپرس , قالب فارسی جوملا , قالب حرفه ای جوملا , کامپوننت جوملا , ماژول جوملا , پلاگین جوملا , پوسته وردپرس , قالب سايت , دانلود قالب , دانلود قالب جوملا , دانلود قالب وردپرس , دانلود قالب فارسی جوملا , دانلود template monster ,
:: بازدید از این مطلب : 139
|
امتیاز مطلب : 6
|
تعداد امتیازدهندگان : 2
|
مجموع امتیاز : 2
تاریخ انتشار : سه شنبه 5 دی 1398 | نظرات ()
نوشته شده توسط : افشین رفوآ

 اندروید و تکنیکهای برنامه نویسی در محیط نا منظم

 آموزش برنامه نويسي آندرويد

اصل و اساس برنامه نویسی اندروید بر پایه جاوا است. در این بین چندین و چند واژه وجود دارد که مختص خود اندروید است و در جاوا تعریف نشده است. از آنجا که – بعضی اوقات – یادگیری واژگان جدید باعث اعصاب خوردی! می شوند، تصمیم دارم به زبان ساده و خیلی مختصر مهمترین آنها را توضیح دهم. بدیهی است از آنجا که متن کاملاً تخصصی است منظور از زبان ساده، سادگی درک برای عموم افراد نیست بلکه منظور برنامه نویسان است.

اکتیویتی ها (Activities)

اکتیویتی، واسط گرافیکی است که کل صفحه نمایشگر را در اختیار بگیرد. اکتیویتی میتواند از چندین View تشکیل شده باشد یا به UI عملکرد مورد نیازش را بدهد. بعنوان مثال برنامه ارسال ایمیل. میتواند شامل دو اکتیویتی باشد. یکی شامل تمامی ایمیل هایی که دریافت کرده ایم، دیگری اکتیویتی که شامل محیط نوشتن ایمیل و ارسال آن باشد. هر دو اکتیوی به هم مربوط می باشند ولی عملکرد آنها کاملاً مستقل از یکدیگر است.

سرویس ها (Services)

یک سرویس در بک گراند (background) اجرا میشود و UI یا واسط کاربری ندارد. مثالی برای سرویس ها اطلاعی (notification) است که بوسیله زنگ و روشن شدن صفحه نمایشگر در زمان دریافت SMS یا ایمیل و یا زمانیکه کسی با ما تماس میگیرد، ارسال میشود.

Content providers (تامین کنندگان محتوا!)

از طریق Content provider ها دسترسی به تمامی اطلاعات ذخیره شده در گوشی – توسط برنامه های دیگر و یا برنامه ای که ما مینویسیم – امکان پذیر است. برای اینکه سایر برنامه ها بتوانند به اطلاعات دسترسی داشته باشند، معمولاً اطلاعات در فایل ها یا دیتابیس ذخیره میشوند.

Layout (قیافه!:) )

Layout ها شامل المانهای طراحی واسط کاربری هستند. هر زمانیکه یک فایل XML برای واسط کاربری ایجاد میکنیم، نیاز به Layout داریم تا طراحی ما را در خودش نگه دارد. در مورد Layout ها در نوشته های بعدی شرح ییشتری خواهم داد. پنج نوع Layout مختلف داریم که حتی میتوانند تو در تو بکار گرفته شوند.

View

View یک عضو مستقل (single object) در واسط کاربری است. View در داخل Layout قرار میگیرد و از ترکیب View ها ساده ترین تا پیچیده ترین واسط های گرافیکی و غیر گرافیکی کاربری ساخته میشود. بعنوان مثال، برچسب (Label) یک نوع View است. اندروید این قابلیت را دارد که ما طرحهای گرافیکی خود را بر اساس XML تولید کنیم و در قسمت کد صرفاً به عملکرد (functionality) برنامه بپردازیم و بدین سبب از پیچیدگی برنامه بکاهیم.

اتفاقات (Events)

Event ها اتفاقاتی هستند مانند کلیک کردن یا لمس کردن، که برای دریافت این اتفاقات متد Listener آن اتفاق باید تعریف شود. Event اتفاقی است که از بیرون رخ میدهد؛ چیزی است که کنترل آن دست ما نیست؛ یا حتی چیزیست که ما نمیدانیم کی اتفاق میافتد. بدین منظور کنترلر های اتفاق (Events controllers) مورد استفاده قرار میگیرند. این امکان وجود دارد که برای هر اتفاقی که رخ میدهد به سیستم بگوییم که چه کاری انجام دهد. معمول ترین اتفاق دریافت لمس صفحه نمایشگر است که برای دریافت آن Listener مورد نیاز باید تنظیم شود.

منابع (Resources)

منابع، المانهای خارجی هستند که ما در برنامه خود بکار  میگیریم. آنها در فولدر “res” ذخیره میشوند و میتوانند فایلهای تصویری، صوتی مانند عکس، فیلم، انیمیشن و موزیک باشند. همچنین فایلهای XML که شامل طراحی های پوسته، واسط کاربری و تم ها هستند، در این پوشه ذخیره میشوند. وقتی عملیات کامپایل انجام میشود، آنها بطور کامل از طریق کدهای جاوا قابل دسترسی هستند.

 

اولین پروژه

این پروژه از این نظر که تمام قسمت های مختلف را توضیح میدهد، مهم میباشد و کار را برای پروژه های بعدی راحتتر میکند. بدیهی است در این مقاله خیلی کلی راجع به قسمت های مختلف توضیح داده خواهد شد و برای توضیحات بیشتر لطفاً به کتابهای آموزش برنامه نویسی اندروید مراجعه کنید.

اگر تاکنون مقاله های “شروع کار برای برنامه نویسی اندروید” و “تنظیم ماشین مجازی اندروید (AVD)” و “بررسی چند واژه مهم اندروید” را مطالعه نکرده اید، لطفاً این مقاله را بخوانید. همچنین درصورتیکه SDK اندروید را ندارید لطفاً آنرا از صفحه “دانلود اندروید SDK 2.3” دانلود کنید.

حالا که همه چیز آماده است لطفاً برنامه اکلیپس خود را اجرا کنید، با رفتن به File>New>Project یک پنجره باز میشود، در فولدر Android بر روی Android Project کلیک کنید (در حالت انتخاب قرار میگیرد)، و سپس بر روی دکمه Next کلیک کنید. پنجره جدیدی با نام New Android Project نشان داده میشود. تنظیمات اولیه پروژه در این پنجره انجام میشود.

۱) برای نمونه در قسمت Project Name (اولین فیلد) نام MyNewProject را وارد کنید.

۲) در قسمت Build Target معلوم میکنیم برای کدام ورژن از اندروید میخواهیم برنامه بنویسیم. در مربع کنار Android 2.3 تیک بزنید.

۳) در قسمت Application Name نام پروژه را مجدد وارد کنید (MyNewProject).

4) در قسمت Package Name نام پکیج مورد نظرتان را وارد کنید. بعنوان نمونه com.kamalan.MyNewProject . نام پکیج از این نظر بسیار مهم است که شما میتوانید در برنامه های مختلفی که در این پکیج مینویسید به همدیگر دسترسی داشته باشید. دقت کنید برای بار اول نام پکیجی را برای خودتان بسازید که دیگر نیاز به عوض کردن نداشته باشد. اندروید به این نام بسیار حساس است و اگر دو برنامه دو نام پکیج مختلف داشته باشند، بهم دیگر دسترسی نخواهند داشت، مگر در حالت Content Provider که انشالله بعداً مفصل راجع به آن بحث خواهد شد.

۵) در قسمت Create Activity هم نام پروژه را وارد کنید (MyNewProject).

6) عدد ۳ را در Min SDK Version وارد کنید. عدد ۳ معرف حداقل سطح APIی است که برنامه شما میتواند بر روی آن اجرا شود. اگر فرضاً شما عدد ۸ را وارد کنید به اندروید میگویید که برنامه فقط قابل اجرا بر روی سیستم عاملهایی است که حداقل API Leve 8 باشند. بنابراین برنامه شما بر روی سیستم عاملهای پایینتر (در این حالت خاص گوشی های قدیمی) قابل اجرا نخواهد بود.

در پایان بر روی دکمه Finish کلیک کنید.

حال مجدداً به برنامه Eclipse وارد میشوید و نام پروژه خود را در پنل Package Workspace به همراه کلی فایل دیگه ۸) مشاهده خواهید کرد. و حالا توضیح کلی این فایلها.

۱) در قسمت src لیست تمام کلاسها و اکتیویتی هایی که تاکنون ساخته اید، نمایش داده خواهد شد.

۲) در این قسمت فایلی با نام R.java وجود دارد که بسیار مهم می باشد. در این فایل شماره هگزادسیمالی ۳۲ بیتی به هر نام و فایلی که قرار است در برنامه استفاده شود، بطور خودکار اختصاص داده خواهد شد. لطفاً این فایل را دست کاری نکنید. در اکلیپس با وارد کردن هر فایل (مثلاً یک عکس) یا نام یک رشته (String) یک آدرس هگز در این فایل ایجاد میشود. در نت بینز تا بر روی کامپایل کلیک نکنید، آدرسی اختصاص داده نمیشود.

۳) با این قسمت کاری نداریم. در این قسمت سورس تمام کتابخانه های موجود در اندروید قرار گرفته است.

۴) در فولدر assets میتوانیم فایلهای صوتی و تصویری را ذخیره کنیم تا در برنامه از آنها استفاده کنیم.

نکته: مدریت فایل بر روی این فولدر انجام نخواهد شد. بدین معنی که انروید به این فایلها آدرسی در R.java اختصاص نخواهد داد. و همچنین تصاویری که در این فولدر قرار میگیرند بدون هیچ دستکاری در برنامه مورد استفاده قرار میگیرند. توضیح بیشتر اینکه مدریت فایل برای کم کردن حجم برنامه تصاویری که در فولدر res قرار دارند را فشرده خواهد کرد بنابراین محتوای عکس (از نظر کیفیت) تغییر خواهد کرد ولی تصاویری که در فولدر assets قرار میگیرند بدون دستکاری باقی خواهند ماند.

۵) در این فولدر نیز مانند فولدر assets میتوانیم فایلهای صوتی و تصویری را قرار دهیم. به هر فایلی که در این فولدر قرار گیرد آدرسی خاص در R.java اختصاص داده خواهد شد.

سه فولدر drawable ملاحظه میکنید که برای ذخیره تصاویر مانند آیکون در سایزهای مختلف است. برای اطلاعات بیشتر راجع به استانداردی که اندروید قرار داده است (البته اجباری نیست!) به صفحه “Icon Design” مراجعه کنید.

فولدر بعدی layout نام دارد. در این فولدر ظاهر گرافیکی تمام صفحات را در فرمت XML تعریف میکنیم. البته در برنامه هم بصورت برنامه نویسی میشود این کار را انجام داد ولی حسن بزرگ اینکار این است که با جدا کردن طراحی ظاهر گرافیکی از قسمت برنامه، باعث کاهش پیچیدگی های برنامه نویسی خواهد شد.

در فولدر آخر values باز هم فایلهای xml قرار میگیرد. این فایلها به تعریف نام های مختلف مانند نام برنامه، رنگ، اندازه فونت و …  پرداخته میشود.

۶) فایل AndroidManifest.xml فایل بسیار مهمی است که اطلاعات مربوط به پروژه را در خودش نگهداری میکند. اطلاعاتی مانند نام پروژه، ورژن پروژه، تعداد اکتیویتی ها، فیلترها، احیاناً API های گوگل اگر در برنامه استفاده شده باشد مانند API مربوط به موقعیت بر روی نقشه و انواع دسترسی ها به منابع سیستم عامل. در مقاله ای مجزا به تعریف کامل مانیفیست خواهیم پرداخت.

اینها توضیحات بسیار کلی بود راجع به روند ایجاد پروژه بر مبنای اندروید در اکلیپس و توضیح فایلهایی که توسط اکلیپس ساخته میشود. حالا به برنامه ای که توسط اکلیپس ساختید مراجعه کنید و یک یک فایلها را مورد بررسی قرار دهید.

src>MyNewProject.java فایل اصلی یا بهتر بگویم اولین اکتیویتی است (اگر راجع به اکتیویتی چیزی نمیدانید به اینجا مراجعه کنید). با اجرای برنامه این فایل اجرا میشود. اگر این اکتیویتی را باز کنید، سورس برنامه را مشاهده خواهید کرد. در خط اول پکیج برنامه معرفی شده است (همان پکیجی که قبلاً معرفی کرده بودیم). سپس کلاسهای مختلفی که در برنامه مورد نیاز بوده است به برنامه import شده است. حالا به کلاس برنامه میرسیم که از کلاس Activity ارث برده است و شامل یک تابع با نام onCreate است. در مورد این تابع مفصل در مقاله ای که راجع به چرخه حیات برنامه (Application life cycle) اندروید است، صحبت خواهیم کرد.

setContentView(R.layout.main); وقتی برنامه به این خط میرسد، نوبت به اجرای گرافیک صفحه است که در layout>main.xml تعریف شده است. همانطور که گفتیم وقتی فایلی در فولدر res ایجاد میشود، مدیریت منابع آدرسی خاص به آن اختصاص میدهد. برای دسترسی به آدرس (بطور خاص در اینجا main) از R.layout.main استفاده شده است.

در قسمت res>layout>main.xml طرح گرافیکی صفحه نشان داده شده است. LinearLayout یکی از چهار حالت گرافیکی است که برای طراحی صفحه بکار گرفته شده است (بعداً در یک مقاله مفصل راجع به انواع layout ها صحبت خواهم کرد). در طراحی خطی هر المان بصری (مانند TextBox, EditBox در دلفی و ویژوال #C) در یک سطر قرار میگیرد. در این برنامه فقط یک TextView داریم که محتوای متنی که باید نشان دهد در res>values>strings.xml قرار گرفته است.

برای دیدن نتیجه برنامه بر روی ایمولاتور ابتدا باید AVD را راه اندازی کرد (اگر نمیدانید AVD چیست این مقاله را مطالعه کنید). برای اینکار در اکلیپس بر روی Window>Android SDK and AVD Mamager کلیک کنید. در پنجره ای که باز میشود یکی از ایمولاتورهایی را که ساخته اید، Start کنید.

بعد از چند ثانیه ایمولاتور بوت میشود و بالا می آید. حال در محیط اکلیپس دکمه را Run بزنید (میتوانید در قسمت Project Workspace بر روی نام پروژه خود راست کلیک کنید و از پنجره باز شده Run As>1 Android Application را کلیک کنید). حال میتوانید برنامه خود را بر روی ایمولاتور مشاهده کنید.

 

براي فراگيري كامل برنامه نويسي آندرويد بصورت كاربردي و تخصصي لطفا به لينك زير رجوع كنيد:

                                                آموزش آندرويد



:: برچسب‌ها: آموزش برنامه نویسی آندروید , آموزش آندروید , آموزش android , آموزش اندروید , اموزش آندروید , اموزش برنامه نويسي , آموزشگاه برنامه نويسي , آموزش برنامه نويسي , آموزشگاه برنامه نویسی در تهران , آموزش کامل برنامه نویسی , آموزشگاه برنامه نويس , اموزش برنامه نويسي در تهران ,
:: بازدید از این مطلب : 226
|
امتیاز مطلب : 2
|
تعداد امتیازدهندگان : 2
|
مجموع امتیاز : 2
تاریخ انتشار : پنج شنبه 23 آذر 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

 

 
براتون آدرس يك لينكو مي گذارم كه پر از كتابهاي آموزشي فارسي و انگليسي مربوط به ASP.NET هست
همچنين در اين سايت كتابهاي آموزشي  مربوط به زبانهاي ديگر برنامه نويسي  هم هست
 
لينك سايت: آموزش ASP.NET


:: برچسب‌ها: آموزش asp , net , اموزش asp , net , آموزش asp , اموزش asp , آموزش AJAX , اموزش اژاکس , آموزشگاه برنامه نويسي , آموزش برنامه نويسي , آموزشگاه برنامه نويس ,
:: بازدید از این مطلب : 137
|
امتیاز مطلب : 1
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : دو شنبه 22 آبان 1398 | نظرات ()
نوشته شده توسط : افشین رفوآ

  

یکی از کتابهای مرجع برای یادگیری ASP.NET کتاب UNLEASHED  می باشد.این کتاب حدود 1900 صفحه می باشد و واقعا کتاب مرجع خوبی برای یادگیری برنامه نویسی ASP.NET 4   می باشد. حتما دانلود کنید و از این کتاب استفاده ببرید.

 

لینک دانلود:  آموزش ASP.NET



:: برچسب‌ها: آموزش asp , net , آموزش asp , تدریس asp , net , اموزش asp , net ,
:: بازدید از این مطلب : 259
|
امتیاز مطلب : 1
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : جمعه 17 شهريور 1398 | نظرات ()
نوشته شده توسط : افشین رفوآ

  یکی از کتابهای فارسی برای یادگیری سی شارپ - C# را براتون لینکشو می گذارم که دانلود کند و ازش استفاده ببرید

 

لینک دانلود:   آموزش C#



:: برچسب‌ها: آموزش سی شارپ , آموزش #C , آموزش C# , دوره آموزش سی شارپ , تدریس #C ,
:: بازدید از این مطلب : 181
|
امتیاز مطلب : 1
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : جمعه 17 شهريور 1398 | نظرات ()
نوشته شده توسط : افشین رفوآ

  آموزش سي شارپ

 

 

 


ASP.NET نسل بعدی Active Server Pages يا ASP است که توسط شرکت ميکروسافت ارائه شده است. اين محصول توسط ميکروسافت بعنوان شاخص اصلی فناوری در ساخت سايتهای وب در نظر گرفته شده است. با استفاده از ASP.NET می توان هم اينترانت کوچک يک شرکت را ساخت و هم يک سايت وب تجاری خيلی بزرگ را طراحی و پياده سازی نمود. مهمترين نکاتی که در طراحی اين محصول در نظر گرفته شده است راحتی استفاده و بالا بودن کارائی و قابليت آن می باشد. در زير برخی ويژگيهای ASP.NET را بررسی می کنيم.
• صفحات ASP.NET کامپايل می شوند.
هنگامی که يک صفحه ASP.NET برای اولين بارتوسط يک مراجعه کننده به سايت فراخوانی می شود، آن صفحه ابتدا کامپايل شده و بر روی سرور نگهداشته می شود و در فراخوانی های بعدی از آن استفاده می شود. اين بدين معنی است که صفحات ASP.NET خيلی سريع اجرا می شوند.
• صفحات ASP.NET با ابزارهای روی سرور ساخته می شوند.
با ابزارهای موجود در ASP.NET می توان صفحات پيچيده وب را براحتی طراحی نمود. بعنوان مثال با استفاده از ابزار DataGrid می توان به آسانی داده های موجود در يک بانک اطلاعاتی را تحت وب نمايش داد.
• مجموعهASP.NET عضوی از بدنه NET. است.
بدنه NET. دارای بيش از ۴۵۰۰ کلاس آماده جهت استفاده در ASP.NET است. اين کلاس ها تقريبا هر نيازی را در برنامه نويسی برآورده می کنند. بعنوان مثال از اين کلاس ها می توان جهت توليد تصاوير بر حسب تقاضا، به رمز درآوردن يک فايل و يا ارسال يک نامه استفاده کرد.
مقايسه ASP.NET و ASP کلاسيک
ASP.NET نسل بعدی ASP يا ASP کلاسيک است. اما اين يک پيشرفت تکاملی است بطوريکه اين دو فناوری تقريبا از يکديگر متفاوتند. صفحات ASP با زبان های دستورالعمل نويسی مانند VBScript يا JScript ايجاد می شوند اما در ASP.NET ما يک فرايند کامل برنامه نويسی با زبانهای Visual Basic يا #C (سي-شارپ تلفظ شود) داريم. همچنين در ASP کلاسيک تنها پنج کلاس استاندارد (Request, Response, Application Session, Server) وجود دارد حال آنکه در ASP.NET می توان از بيش از ۴۵۰۰ کلاس استاندارد موجود در بدنه NET. بهره جست.همچنين عليرغم قدرت و امکانات زياد و متعدد ASP.NET، استفاده از آن در مقايسه با ASP کلاسيک بسيار آسانتر است. بعنوان مثال با استفاده از چند ابزار در يک صفحه ASP.NET می توان يک صفحه بسيار پيچيده HTML بدست آورد که ساخت آن در ASP کلاسيک ممکن است نياز به چند روز کار داشته باشد

زبانهای برنامه نويسی در ASP.NET
شما در ASP.NET می توانيد از هر زبان برنامه نويسی که با بدنه NET. سازگار باشد استفاده کنيد. اين زبانها عبارتند از Visual Basic.NET و #C و JScript.NET . اين بدين معنی است که شما جهت نوشتن برنامه در ASP.NET نياز به فراگيری زبان جديدی نداريد و اگر يکی از زبانهای ويژوال بيسيک يا ++C يا جاوا را می دانيد هم اکنون می توانيد در ASP.NET برنامه بنويسيد.از طرف ديگر تعدادی زبانهای ديگر توسط بعضی از شرکتهای فعال در اين زمينه به مجموعه زبانهای استاندارد ASP.NET افزوده شده است. بعنوان مثال اگر مايل باشيد حتی می توانيد از PERL و COBOL هم در ASP.NET استفاده کنيد.


ابزارهای ASP.NET
سالهاست که برنامه نويسان ويژوال بيسيک جهت ساخت فرم های خود از ابزارهای ويژوال بيسيک مانند TextBox و ListBox استفاده کرده اند. در ASP.NET هم شما می توانيد از ابزارهای فراوان موجود در آن برای ساخت فرم ها و صفحات خود استفاده نمائيد. در ASP.NET چهار دسته عمده از ابزارها موجود است:
• ابزارهای اصلی مانند TextBox، RadioButton، ListBox و Button.
• ابزارهای اعتباری برای حصول اطمينان از ورود و تائيد صحت اطلاعات ورودی فرم ها.
• ابزارهای داده ای برای ارتباط با بانک اطلاعاتی و دستکاری داده.
• ابزارهای پيشرفته جهت نمايش عناصر پيچيده در واسط کاربر مانند تقويم و آگهی های تبليغاتي.


با استفاده از Visual Studio.NET شما براحتی می توانيد با چيدن تصويری اين ابزارها بر روی فرم مورد نظر، صفحه دلخواه خود را بسازيد. در صورت تمايل حتی می توانيد در يک ويرايشگر ساده متن مانند Notepad برنامه مورد نظر را نوشته و از اين ابزارها استفاده کنيد.


دريافت ASP.NET
جهت شروع برنامه نويسی در ASP.NET تنها کافی است که مجموعه ASP.NET را بهمراه بدنه NET. از سايت ميکروسافت دريافت کنيد.


دريافت .NET Framework


ASP.NET با سيستم عامل های Windows 2000 (نسخه Server و Professional) و Windows XP کاملا سازگار است

به نقل از سایت آسان دانلود



:: برچسب‌ها: آموزش سی شارپ , آموزش #C , تدریس سی شارپ , تدریس C# , تدریس #C ,
:: بازدید از این مطلب : 157
|
امتیاز مطلب : 1
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : چهار شنبه 8 شهريور 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

 


اهداف دوره 
:

 

 


 

 

 

 

 

آشنایی با محیط توسعه Android ، آشنایی با معماری بر اساس تفکر Android در ابزار قابل حمل، اصول برنامه نویسی Intent، مدیریت توسعه پلتفرم های قابل حمل ، برنامه نویسی پایه ای Android، آشنایی با کلاسهای جاوا در محیط توسعه Android، آشنایی با طراحی برنامه های پایه و کاربردی، روش های ذخیره و بازیابی اطلاعات ، کار با پیام کوتاه و چند رسانه ای ، موقعیت یاب فعال

 

 

 

 

 

 

 

سر فصلهاي دوره:

 

 

 

 

 

-          معماری Android و مفاهیم اولیه

o        اندروید

o        نسخه ها و ویژگی های انروید

o        تفاوتهای سخت افزاری

o        صفحه نمایش

o        سنسورها

o        اشکال زدایی سخت افزاری برنامه ها

o        توسعه اندروید

-          برنامه نویسی ساخت یافته

o        برنامه های کاربردی

o        ایجاد پروژه جدید

o        فایل اندروید

o        چرخش صفحه

o        ذخیر و بازیابی اطلاعات

o        استفاده از Button , text view

o        تولید رویداد

o        انواع داده ای و لیستهای انتخاب

o        تولید خروجی نهایی

 

 

-          اجرای همزمان، سرویس نویسی و ایجاد هشدار on-line

 

 

o        Thread در اندروید

o        توضیح سرویس گرایی در اندروید

o        تعیین اولویت

o        اشتراک داده ای بین برنامه ها

o        متوقف شدن یک برنامه

o        نگهدارنده ها

o        زمانسنج کاهنده در برنامه ها

o        مدیریت مقادیر اولیه در سیستم

o        تولید گیرنده Receiver

o        تولید ویجت های کوچک

o        نمایش اطلاعات در نواز وضعیت

-          واسط کاربری

o        دایرکتوریها و صفات وابسطه

o        انتخاب منبع جایگزین

o        کنترل عرض و طول المانها

o        صفات متن

o        ایجاد فرم

o        دکمه های تصویری

o        چک باکس و دکمه های چند وضعیتی

o        تولید منو

 

 

-          UI Event

 

 

o        مدیریت کننده رویدادها

o        رهگیری برنامه ها

o        تعریف منو در فایل XML

o        رویدادهای لمسی

o        اشاره گرهای پرتابی

o        تصاویر سه بعدی

 

 

-          Multimedia

 

 

o        تصاویر و تکنیکهای وابسطه

o        بارگذاری تصاویر

o        فایل صوتی

o        ضبط فایل صوتی

o        اضافه کردن مدیا به برنامه های کاربردی

 

 

-          Hardware Interface

 

 

o        دوربین و توابع وابسطه

o        شخصی سازی

o        سنسورها

o        استفاده از سنسورهای دما و نور

o        بلوتوث

o        ابزار تلفن و کنترل آن

o        لرزش دستگاه

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

-          شبکه سازی و شبکه بندی

o        Sms و پیام کوتاه

o        ارسال خودکار پیام کوتاه

o        استفاده از وب

o        HTTP POST

o        HTTP GET

o        اتصال به سایت

-          ذخیره سازی داده ها

o        اشتراک گذاری داده ها

o        ایجاد و بازیابی

o        SQLite

o        سایر پایگاه داده ها

o        ذخیره و بارگذاری فایل

 

 

-          Position Trace

 

 

o        مبانی مکان یابی

o        آخرین موقعیت

o        کار با Google Map

o        تبدیل موقعیت به آدرس

o        اضافه کردن Google Map به برنامه ها

o        ایجاد هشدار بر اساس یک موقعیت خاص

 

 

o        علامت گذاری موقعیت ها

برای شرکت در کلاسهای اندروید به سایت زیر رجوع کنید:

آموزش اندروید

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

تدریس اندروید



:: برچسب‌ها: آموزش اندروید , آموزش برنامه نویسی اندروید , تدریس آندروید , برنامه نویسی موبایل , آموزشگاه اندروید , آموزشگاه برنامه نویسی اندروید , بهترین اموزشگاه اندروید ,
:: بازدید از این مطلب : 251
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0
تاریخ انتشار : سه شنبه 3 مرداد 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

  سیستم عامل اندروید دارای نسخه‌های متفاوت است که در هر کدام از آن‌ها تفاوت‌های بی نظیری ایجاد شده است که در این مطلب به این تفاوت‌ها میپردازیم.
 



نسخه اول اندروید


این نسخه از آندروید که اولین نسخ آن است در تاریخ ۲۳ ستامبر ۲۰۰۸ ببر روی گوشی htc dream G1 معرفی شد.


قابلیت‌ها :


برنامه بازار اندروید (Android Market) جهت نصب و بروز رسانی برنامه‌ها از طریق اینترنت.


مرورگر وب با قابلیت نمایش کامل صفحه‌های اینترنتی با پسوند (HTML٫XHTML) و بزرگنمایی محتوای صفحه


پشتیبانی از دوربین البته این نسخه از اندروید فاقد قابلیت تغییر رزولوشن تصویر یا تغییر سفیدی یا رنگ تصویر بود


هماهنگ سازی حساب Gmail با برنامه Gmail اندروید از طریق اینترنت.


هماهنگ سازی حساب Gmail با برنامه(People app)اندروید از طریق اینترنت.


هماهنگ سازی حساب Gmail با تقویم اندروید از طریق اینترنت.


برنامه Google Maps یا نقشه‌های گوگل برای مشاهده نقشه‌ها و تصاویر ماهواره ای از خیابان‌ها و گذرگاه‌ها و همچنین پیدا کردن کسب و کار محلی و جهت یابی در هنگام رانندگی با استفاده از GPS


قابلیت جستجوی گوگل که به کاربر امکان جستجو در اینترنت و برنامه‌های تلفن همراه یا در میان لیست مخاطبین و تقویم را می‌دهد.


قابلیت گوگل تالک (Google Talk) جهت پیام فوری از طریق اینترنت.


پشتیبانی از پیامک متنی (SMS) و پیامک تصویری (MMS)


مدیا پلیر با قابلیت پخش فایلهای رسانه ای (media files). البته این نسخه فاقد پشتیبانی از اجرای فیلم و بلوتوث استریو بود.


برنامه یوتیوب (YouTube) جهت تماشای فیلم‌های این سایت از طریق اینترنت.


اعلام اطلاعیه‌های(Notifications) نوار وضعیت از طریق زنگ قابل انتخاب یا ال ای دی (LED) و لرزاننده (vibration) تلفن همراه.


وجود برنامه‌هایی مانند: زنگ هشدار(Alarm Clock)، تقویم، برنامه تماس گیر (Dialer)، لانچر صفحه خانگی(Home screen (launcher، گالری عکس(pictures gallery) و تنظیمات


پشتیبانی از اتصالات بی سیم، Wifi و بلوتوث








آندروید ۱٫۱


در تاریخ ٩ فوریه ٢٠٠٩ اندروید ١٫٠ به ١٫١ بروز رسانی شد.


آندروید ۱٫۵ یا Cupcake (کیک فنجانی)


نسخه ۱٫۵ اندروید در ۳۰ آوریل ۲۰۰۹ منتشر شد. این نسخه اندروید مبتنی بر کرنل لینوکس ۲٫۶٫۲۷ بود. از جمله قابلیت‌هایی که در این ویرایش گنجانده شده بود شامل:


امکان ضبط فیلم از طریق دوربین فیلمبرداری


فرستادن فیلم به سایت یوتوب Youtube و عکس به سایت پیکاسا Picasa به صورت مستقیم از روی گوشی


صفحه کلید مجازی با قابلیت پیش‌بینی کلمات وارد شده


پشتیبانی از پخش استریوی موسیقی از طریق بلوتوث (A2DP) و کنترل پخش موسیقی یا ویدیو از طریق بلوتوث (AVRCP).


قابلیت اتصال اتوماتیک به دستگاه‌های بلوتوث


امکان شخصی‌سازی صفحه اصلی با استفاده از ویجت‌ها و یا پرونده‌های شخصی


جابجایی انیمیشنی تصاویر به هنگام عوض شدن صفحات


آندروید ۱٫۶ Donut


در ۱۵ سپتامبر ۲۰۰۹ اندروید نسخه ١٫۶ یا دونات منتشر شد. این نسخه اندروید مبتنی بر کرنل لینوکس نسخه ۲٫۶٫۲۹ بود و قابلیت‌های زیر را به اندروید افزود:


بهبود در سرویس اندروید مارکت


رابط کاربری یکپارچه برای دوربین عکسبرداری، دوربین فیلمبرداری و گالری تصاویر


امکان انتخاب چند عکس برای پاک کردن در منوی گالری


به‌روزرسانی ویژگی جست‌وجوی صوتی


به‌روزرسانی ویژگی جست‌وجو با قابلیت جست‌وجو در موارد نشانه‌گذاری شده (Bookmarks)، تاریخچه (History)، اسامی‌(Contacts) و وب از صفحه اصلی (Home Screen)


پشتیبانی از تکنولوژی‌های به‌روز شده CDMA/EVDO، ۸۰۲٫۱x، *** و موتور Text to speech


پشتیبانی از رزولوشن WVGA برای صفحه نمایش


افزوده شدن قابلیت‌های حرکتی در سیستم عامل و ابزار برنامه‌نویسی برای برنامه‌نویسان








آندروید ۲ و ۲٫۱ Eclair (نان خامه‌ای)


هر دو نسخه ۲ و ٢٫١ اندروید مانند نسخه ١٫۶ مبتنی بر کرنل لینوکس ۲٫۶٫۲۹ طراحی شده‌اند. اندروید ویرایش ۲ در ۲۶ اکتبر ۲۰۰۹ معرفی شد. 


در سوم دسامبر ۲۰۰۹ SDK نسخه ۲٫۰٫۱ معرفی شد و SDK ویرایش ٢٫١ در ۱۲ ژانویه ۲۰۱۰ منتشر گردید. اهم امکانات اضافه شده در این نسخه به شرح زیر هستند:




سرعت سخت‌افزاریِ بهبود یافته


ویژگی چند لمسی Multi Touch


پشتیبانی از رزولوشن‌های بیشتر برای صفحه نمایش


رابط کاربری به‌روزرسانی شده


مرورگر اینترنتی با قابلیت پشتیبانی از HTML5


دفترچه تلفن به‌روزرسانی شده


گوگل مپ نسخه ۳٫۱٫۲


پشتیبانی از Microsoft Exchange


افزوده شدن امکان فلاش داخلی برای دوربین


افزوده شدن زوم دیجیتال دوربین


به‌روزرسانی صفحه کلید مجازی


پشتیبانی از بلوتوث نسخه ۱/۲


اضافه شدن قابلیت کاغذ دیواری‌های متحرک


اضافه شدن امکان ارسال فایل با استفاده از بلوتوث








آندروید ۲٫۲ Foryo (ماست یخ زده)




اندروید نسخه ۲٫۲ در ۲۰ مه ۲۰۱۰ معرفی شد. این ویرایش اندروید مبتنی بر کرنل لینوکس نسخه ۲٫۶٫۳۲ است و قابلیت‌های زیر به آن اضافه شده است:




افزایش سرعت سیستم عامل، حافظه و عملکرد سیستم بین ۲ تا ۵ برابر نسخه ۲


افزایش سرعت اجرای برنامه‌های کاربردی با استفاده از تکنیک‌های JIT


اضافه شدن موتور جاوا اسکریپت V8 کروم به مرورگر اینترنتی


افزایش پشتیبانی از Microsoft Exchange با قابلیت‌هایی چون سیاست حریم شخصی به‌روز شده، همسان‌سازی تقویم و …)


اندروید مارکت به‌روز شده با قابلیت به‌روزرسانی خودکار برنامه‌های کاربردی


شماره‌گیری صوتی و انتقال دفترچه تلفن از طریق بلوتوث


امکان نصب برنامه‌های کاربردی بر روی حافظه‌های جانبی


پشتیبانی از فلش نسخه ۱/۱۰ • بهبود عملکرد دوربین در حالت‌های عکس و فیلمبرداری








آندروید ۲٫۳ Gingerbread (نان زنجبیلی)




اندروید نسخه ۲٫۳ یا نان زنجفیلی در ۶ دسامبر ۲۰۱۰ معرفی شد. این ویرایش اندروید مبتنی بر کرنل لینوکس نسخه ۲٫۶٫۳۵ است. امکانات اضافه شده در این نسخه به شرح زیر هستند:




بهینه سازی و تغییر در طراحی رابط کاربری به همراه ساده تر و سریعتر کردن آن.


پشتیبانی از صفحه نمایش بزرگتر و رزولوشن بیشتر (WXGA و بیشتر) [۵]


پشتیبانی از تماس اینترنتی یا تماس‌های VoIP


افزودن قابلیت ان‌اف سی(NFC) یا همان ارتباط حوزه نزدیک.


ان‌اف سی (NFC) گونه‌ای وسیله ارتباطی بی‌سیم بین دو دستگاه که در مجاورت همدیگر قرار دارند هست که معمولا این فاصله حداکثر چند سانتی‌متر است. 


از موارد استفاده آن می‌توان به پرداخت پول از طریق گوشی‌های هوشمند اشاره کرد.



:: برچسب‌ها: آموزش اندروید , آموزش برنامه نویسی اندروید , اندروید , برنامه نویسی موبایل , آموزشگاه اندروید , Android , آموزشگاه برنامه نویسی اندروید , بهترین اموزشگاه اندروید ,
:: بازدید از این مطلب : 167
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0
تاریخ انتشار : سه شنبه 3 مرداد 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

 


عنوان دوره : دوره آموزشی #C

 

پیش نیاز : آشنایی با منطق برنامه نویسی

 

 

نرم افزار های مورد استفاده :

 

 MICROSOFT VISUAL STUDIO 2010

MICROSOFT SQL SERVER 2008 R2

 

فهرست مخاطبین:

  •  این دوره برای افرادی طراحی شده است که با یک زبان برنامه نویسی آشنایی دارند و می خواهند دانش عملی خود را در زمینه برنامه نویسی شیءگرا، مفاهیم پایه ای .NET Framework افزایش دهند.
  •  برنامه نویسانی که برنامه نویسی را به طور تجربی آموخته اند و دانش کافی از معماری .NET، نحوه مدیریت حافظه در .NET و ویژگیهایی نظیر Genericها، delegate ها، Boxing و UnBoxing  و همچنین Reference Typeو  Value Type و تفاوت آنها و ... را به خوبی    نمی دانند از مخاطبین این دوره هستند.
  •  دانشجویانی که با تکنولوژی XML و کاربردهای آن در صنعت نرم افزار آشنا نیستند و یا به صورت عملی برنامه نویسی ننموده اند نیز از مخاطبین این دوره هستند.

 

 

اهداف دوره:

 

 

 

 

 

  • مبانی C#
  •  متغیرها
  •  کنترل جریان
  •  حلقه ها
  •  دستورات پرش (Jump)
  •  آبجکت ها و انواع دادهای
  •  متد ها
  •  خاصیت ها
  • وراثت
  • عملگر ها و Cast ها
  • رشته ها و عبارات با قاعده
  • مجموعه ها
  • Generic ها
  • خطاها و Exception ها
  •  کار با Visual Studio 2010
  • فرم ها و کنترلهای ویندوزی
  •  ADO.Net
  •  Connection Oriented Database Programming
  •  Connection Less Database Programming
  •  XML و .NET
  •  اعمال تغییرات documentهای XML با استفاده از Model Document Object
  •  خواندن و نوشتن documentهای XML
  •  دسترسی به documentهای XML با استفاده از مدل Xpath Data

 

سرفصلهای دوره:

  • مبانی #C
  • پیش از شروع کار
  • اولین برنامه C# شما
  • کد برنامه
  • کامپایل و اجرای برنامه
  • نگاهی دقیق تر

o متغیرها

  • مقدار دهی متغیرها
  • محدوده (scope) متغیر
  • تداخلات scope مربوط به متغیر محلی
  • تداخلات scope مربوط به فیلد ها و متغیر های محلی
  • ثابت ها (Constants)
  • انواع داده ای از پیش تعیین شده
  • انواع مقداری و انواع ارجاعی
  • انواع CTS
  • انواع مقداری از پیش تعیین شده
  • انواع integer
  • انواع Floating-point (نقطه اعشار)
  • نوع دسیمال
  • نوع بولین (Boolean )
  • نوع کاراکتری
  • انواع ارجاعی از پیش تعیین شده
  • نوع آبجکت (Object)
  • نوع رشته ای (String)

o کنترل جریان

  • دستورات شرطی
  • دستور if
  • دستورswitch

o حلقه ها

  • حلقۀ for
  • حلقۀ While
  • حلقۀ do…while
  • حلقۀ foreach

o دستورات پرش (Jump)

  • دستور goto
  • دستور break
  • دستور continue
  • دستور return
  • Enumeration ها

 

آبجکت ها و انواع دادهای

  • کلاس ها و ساختارها
  • اعضای کلاس
  • اعضای داده ای (Data Members)
  • اعضای تابعی (Function Members)

o متد ها

  • تعریف کردن متد ها
  • بکارگیری متد ها
  • ارسال پارامتر ها به متد ها
  • پارامتر های ref
  • پارامتر های خروجی
  • عمل Overloading متد

o خاصیت ها

  • خاصیت های فقط خواندنی و فقط نوشتنی
  • معرف های (modifiers) دسترسی مربوط به خاصیت ها
  • نکته ای در مورد عمل inlining
  • سازنده ها (Constructors)
  • سازنده های ایستا (Static Costructors)
  • فراخوانی سازنده ها از طریق سایر سازنده ها
  • فیلد های فقط خواندنی
  • ساختار ها (structs)
  • ساختار ها از انواع مقداری هستند
  • ساختار ها و وراثت
  • سازنده های مربوط به ساختار ها
  • کلاس های Partial (بخش بخش شده)
  • کلاس های ایستا (Static Class)
  • کلاس Object متد های System.Object
  • متد ()ToString

وراثت

  • انواع وراثت
  • وراثت پیاده سازی (Implementation) در مقابل وراثت واسط
  • وراثت چند گانه (multiple inheritance)
  • ساختار ها و کلاس ها
  • پیاده سازی وراثت
  • متد های مجازی
  • پنهان سازی متد ها
  • فراخوانی نسخه های پایه ای (Basic) توابع
  • کلاس ها و توابع مجرد(Abstract)
  • کلاس ها و متد های sealed (مهر و موم شده)
  • سازنده های کلاس های مشتق شده
  • افزودن یک سازنده بدون پارامتر به یک سلسله مراتب
  • افزودن سازنده های با پارامتر به یک سلسله مراتب
  • تعریف کننده ها (Modifiers)
  • تعریف کننده هی مرئیت (visibility modifiers)
  • سایر modifier ها
  • واسط ها(Interfaces)
  • تعریف و پیاده سازی واسط ها
  • واسط های مشتق شده (Derived Interface )

 

عملگر ها و Cast ها

  • عملگر sizeof
  • عملگر typeof
  • مقایسه آبجکت ها برای تساوی (Equality)
  • مقایسه انواع ارجاعی از نظر Equality (تساوی)
  • متد مجازی Equals()
  • متد ایستای Equals()
  • عملگر مقایسه (==)
  • تبدیلات user-defined
  • پیاده سازی cast های user-defined
  • تبدیلات (casts) مابین کلاس ها
  • Cast های boxing و unboxing
  • رشته ها و عبارات با قاعده
  • System.String
  • ساخت رشته ها
  • اعضای StringBuilder
  • قالب بندی رشته ها
  • چگونه رشته قالب بندی می شود
  • مثال FormattableVector
  • عبارتهای با قاعده (Regular Expressions)
  • مقدمه ای بر عبارت های با قاعده

مجموعه ها

  • بررسی گروه هایی از آبجکت ها
  • Collection ها
  • تعریف یک مجموعه
  • لیست های آرایه ای(ArrayList)
  • دیکشنری ها و HashTable ها

Generic ها

  • مروری بر Generic ها
  • کارایی (Performance)
  • تعیین نوع ایمن(Type Safety)
  • استفاده مجدد از کد باینری
  • افزایش میزان کد ها
  • قواعد نام گذلری
  • کلاس های مجوعه Generic
  • مروری بر روی مجموعه های Generic
  • بکارگیری کلاس List

خطاها و Exception ها

  • نگاهی به خطا و مدیریت خطا
  • کلاس های Exception
  • کلاس های Exception کلاس پایه (base)
  • به دام انداختن خطا ها
  • پیاده سازی چندین بلاک catch
  • به دام انداختن Exception هایحاصل از سایر کد ها
  • خاصیت های System. Exception
  • اگر یک Exception مدیریت نشود چه اتفاقی می افتد؟
  • بلاک های try تودر تو
  • اصلاح نوع Exception
  • مدیریت Exception های مختلف موجود در مکان های مختلف
  • کلاس های خطای User-Defined
  • به دام انداختن Exception های User-Defined
  • تعریف کردن کلاس های Exception

Visual Studio 2010

  • کار با Visual Studio 2010
  • ایجاد یک پروژه
  • انتخاب یک پروژه
  • پروژه کنسولی که اخیراً ایجاد شده است
  • سایر فایل های ایجاد شده
  • Solution ها و پروژه ها
  • افزودن یک پروژه دیگر به Solution
  • تنظیم پروژه startup
  • کد برنامۀ ویندوزی
  • خواندن پروژه های Visual Studio 6
  • مرور کردن و کد نویسی یک پروژه
  • ویرایش گر پوشه ای
  • سایر پنجره ها
  • پنجره Design view
  • پنجره Properties
  • پنجره Class view
  • پنجره Object browser
  • پنجره Server Explorer
  • ساخت یک پروژه
  • ساخت (building ) ، کامپایل (Compiling) و ایجاد (making)
  • اشکال زدائی و عرضۀ build ها
  • بهینه سازی (Optimization)
  • نشانه های debugger (اشکال زدا)
  • دستورات اضافی اشکال زدائی سورس کد
  • انتخاب یک پیکر بندی
  • ویرایش یک پیکر بندی
  • Break point ها
  • پنجره watch
  • Exception ها
  • عمل refactoring

فرم ها و کنترلهای ویندوزی

 

 

  • ایجاد یک برنامه Windows form
  • سلسه مراتب کلاس
  • کلاس control
  • اندازه و مکان
  • شکل ظاهری(appearance)
  • تعامل با کاربر(user interaction)
  • عملکرد ویندوز(windows functionality)
  • کنترل ها و کامپوننت های استاندارد
  • کنترل button
  • کنترل CheckBox
  • کنترل RadioButton
  • CheckedListBox و ListBox و ComboBox
  • DateTimePicker
  • ErrorProvider
  • HelpProvider
  • ImageList
  • Label
  • ListView
  • PictureBox
  • ProgressBar
  • MaskedTextBox و TextBox و RichTextBox
  • Panel
  • TableLayoutPanelوFlowLayoutPanel
  • SplitContainer
  • TablePages وTableConrol
  • ToolStrip
  • MenuStrip
  • ContextMenuStrip
  • ToolStripMenuItem
  • ToolStripManager
  • ToolStripContainer
  • فرم ها
  • کلاس فرم
  • نمونه سازی و تخریب فرم
  • شکل ظاهری
  • Multiple Document Interface (MDI)
  • کنترل های سفارشی
  • صفات کنترل
  • کنترل سفارشی مبتنی بر TreeView
  • کنترل کاربر(UserControl)

ADO.Net

 

 

 

 

  • آشنایی با Connection
  • آشنایی با Command
  • آشنایی با DataAdapter
  • تراکنشها در Ado.Net
  • آشنایی با Dataset
  • آشنایی با DataTable
  • آشنایی با DataView
  • پروسه Data-Binding در فرم های ویندوز
  • آشنایی با BindingContext

معرفی XML و .NET

  • XML چیست؟
  • مزایای XML
  • برنامه های XML
  •  قوانین گرامر XML
  • Markup، حساس به Case است
  • یک document باید فقط یک عنصر ریشه ای داشته باشد
  • یک Start tag باید End Tag نیز داشته باشد
  • Tagهای Start و End باید بطور صحیحی nest شود
  • Valueهای Attribute باید در علامات نقل قول "" قرار گیرند
  • DTDها و Schemaهای XML
  •  Parse کردن اسناد XML
  • XSLT
  • XPath
  • .Net Framework
  • .Net و XML
  • اسمبلی ها و فضاهای نامی
  • مدل Parse کردن کلاسیک XML در .Net Framework
  • مدل Parse کردن LINQ محور در .Net Framework
  • فایل های پیکربندی .Net
  • ADO.NET
  • کنترل های سرور ASP.NET
  • XML Serialization
  • Remoting
  • سرویس های وب
  • XML Documentation
  • ویژگی های SQL Server XML
  •  کارکردن با Visual Studio
  • ایجاد برنامه های تحت ویندوز
  • ایجاد Libraryهای Class

دستکاری documentهای XML با استفاده از مدل document object

  • استفاده از DOM Parser
  • کی از DOM استفاده کنیم؟
  • یک نمونه از سندXML  
  • باز کردن یک سندXML موجود برای parse کردن
  • پیمایش در سندXML  
  •  جستجوی عناصر و nodeهای ویژه
  • بازیابی عناصر ویژه با استفاده از متد GetElementByTagName()
  • بازیابی عناصر ویژه با استفاده از متد GetElementByld()
  • انتخاب nodeهای ویژه با استفاده از متد SelectNodes()
  • انتخاب یک node واحد ویژه با استفاده از متد SelectSingleNode()
  • اصلاح کردن سندهایXML  
  • پیمایش بین nodeهای مختلف
  • اصلاح کردن محتویات موجود
  • حذف کردن محتویات موجود
  • اضافه کردن محتویات جدید
  • استفاده از متدهای Helper
  • کارکردن با فضای سفید (White Space)
  • کارکردن با فضای نامی
  • درک رویدادهای کلاس XmlDocument

 

خواندن و نوشتن documentهای XML

  • readerها و writerهای XML چه چیزی هستند؟
  • کی از readerها و writerها استفاده کنیم؟
  • کلاس های reader
  • کلاس XmlTextReader
  • کلاس XmlValidationaReader
  • کلاس XmlNodeReader
  •  خواندن سندها با استفاده از XmlTextreader
  • باز کردن سندهای XML
  • خواندن Attribute، عناصر، و مقادیر
  • بهبود اجرا با استفاده از جداول نامی
  • کارکردن با فضاهای نامی
  • حرکت بین عناصر
  • متد ReadSubTree()
  • متد ReadToDescendant()
  • متد ReadToFollowing()
  • متد ReadToNextSibling()
  • متد Skip()
  • حرکت بین Attribute
  • خواندن محتویات
  • متد ReadinnerXml()
  • متد ReadOuterXml()
  • متد ReadString()
  • نوشتن سندهای XML
  • Export کردن ستون ها به صورت عنصر
  • Export کردن ستون ها به صورت Attribute
  • تعیین رمزگذاری کاراکتر
  • فرمت کردن Output
  • ساپورت فضای نامی
  • کارکردن با داده هایNontextual
  • Serialize کردن داده ها
  • Unserialize کردن داده ها

 دسترسی به documentهای XML با استفاده از مدل Xpath Data

  • مروی بر XPath
  • موقعیت Path
  • Axis
  • تستهای Node
  • اسناد
  • عملکردهای Xpath
  • مدل Xpath Data
  • ایجاد XpathNavigator
  • پیمایش در سند XML با استفاده از XPathNavigator
  • انتخاب کردن nodeها
  • پیمایش بین Attribute
  • بازیابی XML درونی و بیرونی
  • به دست آوردن یک XmlReader از XPathNavigator
  • به دست آوردن یک XmlWriter از XPathNavigator
  • ویرایش سندهای XML با استفاده از کلاس XPathNavigator

آموزش سی شارپ

تدریس سی شارپ

 



:: برچسب‌ها: آموزش سی شارپ , آموزش #C , تدریس سی شارپ , تدریس C# , تدریس #C ,
:: بازدید از این مطلب : 1367
|
امتیاز مطلب : 6
|
تعداد امتیازدهندگان : 2
|
مجموع امتیاز : 2
تاریخ انتشار : سه شنبه 6 تير 1398 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش MVC

 


Model - View - Controller

MVC3 آخرین تکنولوژی مایکروسافت در زمینه تولید صفحات وب (تا این لحظه ، یعنی مارچ 2011) می باشد که کم کم جایگزین روش قبلی تولید صفحات وب (Web Forms) می شود و جالب اینجاست که به شدت از سوی مایکروسافت تبلیغ می شود و منابع آن به سرعت انتشار می یابند. این تکنولوژی که در حال حاضر نسخه 3 آن منتشر شده است دارای مزیتهای زیر نسبت به تکنولوژی قبلی (Web Forms) می باشد(در واقع موارد ذیل مشکلات وب فرمها هستند).

  • در وب فرمها ، برنامه نویس کنترل زیادی روی خروجی HTML تولید شده توسط ASP.NET ندارد و اگر شما سورس کد صفحه را ببینید ، شاهد کد HTML شلوغی هستید که مشکل می توانید از آن سر در بیاورید
  • در وب فرمها با رد و بدل شدن ViewState در هنگام ارسال به سرور ، حجم آن زیاد می شود و صفحه به اصطلاح پف می کند 
  • ایجاد واحد تست (Unit Test) در وب فرمها مشکل است 
  • چرخه رد و بدل شدن فایل بین کلاینت و سرور پیچیده است

 تکنولوژی MVC تمام مشکلات فوق را حل می کند و مزایایی نیز دارد از جمله :

  • Method Request است یعنی شما می توانید به جای فراخوانی کل یک صفحه ، یک متد را فراخوانی کنید
  • Partly Open Source است . یعنی بخشی از کدهای اصلی آن "باز" است و می توانید تحت استاندارد نرم افزارهای متن باز ، آن را ویرایش کنید

من در ابتدا تصمیم داشتم که در 5 الی 6 مقاله کل مبحث را خلاصه کنم ولی ترجیح دادم تا به جای آن ، بصورت گام به گام یک پروژه MVC را شروع کنم و در طی آن مطالب جدید را بیان کنم. اما قبل از شروع :

- نصب برنامه :

 MVC2 در ویژال استودیو 2010 نگارش Ultimate از پیش نصب شده است ولی اگر بدنبال نصب MVC3 هستید ، از آدرس http://www.microsoft.com/web  ابزار WebMatrix را نصب کنید. این ابزار پس از نصب ، پنجره Web Platform Installer 3 را در اختیار شما می گذارد که نه تنها می توانید MVC3 را نصب کنید ، بلکه می توانید برنامه های مفید دیگه ، مثل تنظیمات توصیه شده مایکروسافت برای IIS7 یا موتور (engine) بسیاری از CMS های معروف مثل DotNetNuke ، Drupal , Joomla , Umbarco را نیز نصب کنید (یکی به عجایب هفت گانه دنیا اضافه شده !!!)

- مبانی MVC:

من چون نمی خواهم خیلی وارد مباحث تئوریک شوم بصورت خلاصه توضیح می دهم و زمانی که پروژه را شروع کردیم ، خودتان این مفاهیم را بهتر متوجه می شوید . برای شروع از MVC2 آغاز می کنیم و پس از طرح مباحث اصلی MVC3 را نیز شرح می دهم .

در MVC سه جزء اصلی وجود دارد :

  • Model
  • Controller
  • View

Model کلاسهایی برای ارتباط با دیتابیس و استفاده از تکنیک هایی مثل Linq و Entity Framework هستند

Controller قلب MVC است و کنترل کننده درخواستهای کاربر است ، کلاسهایی هستند که در آنها ، متدهای (اکشن های) مختلف جهت پاسخگویی به درخواست کاربر و انتخاب Model و یا View (خروجی) مناسب ، وجود دارد.

View رابط کاربری است یعنی آنچه کاربر باید ببیند را در آن نمایش می دهیم.

- ایجاد پروژه جدید : برای ایجاد پروژه جدید مطابق معمول از منوی File ویژال استودیو ، گزینه New و سپس Project را انتخاب کنید و سپس یکی از قالبهای زیر را انتخاب کنید :

  • ASP.NET MVC2 Web Application
  • ASP.NET MVC2 Empty Web Application

(البته اگر MVC3 را نصب کرده باشید ، MVC3 را هم می بینید) تفاوت دو قالب فوق در این است که اولی شامل یک سری الگوهای آماده ، مثل Membership دات نت فریم ورک ، مراجع Jquery ، کلاسهای CSS از پیش ساخته شده است ولی دومی (Empty) اینها را ندارد و خودتان باید آنها را اضافه کنید برای شروع ، قالب اول را انتخاب کنید، نام و مسیر مناسبی برای آن انتخاب کنید و پروژه را ایجاد نمایید ، از شما سوال می شود که آیا تمایلی به ایجاد واحد تست دارید یا خیر (که من برای شروع خیر را انتخاب می کنم، توی شکل زیر Yes انتخاب شده !) :



پس از ایجاد باید شکل Solution Explorer شما به صورت زیر باشد :



 همانطور که می بینید پوشه های مجزایی برای هر دسته از فایلها وجود دارد : مثل Controller , View , Model , ... پوشه Script شامل فایلهای جاوا اسکریپت و Jquery و MicrosoftAjax است . پوشه Conetnt هم محلی برای نگهداری فایلهای CSS و تصاویر است. اگر برنامه را اجرا کنید (F5) باید صفحه ای آبی رنگ با پیام Welcome to ASP.NET MVC! مشاهده کنید.

برای شروع کار فایل HomeController.cs از فولدر Controllers را باز کنید . کدهای زیر را در آن می بینید :

namespace _30Sharp_com_MVC.Controllers
{
    public class HomeController : Controller
    {
        [HandleError]
        public class HomeController : Controller
        {
            public ActionResult Index()
            {
                ViewData["Message"] = "Welcome to ASP.NET MVC!";

                return View();
            }

            public ActionResult About()
            {
                return View();
            }
        }

    }
}

نکاتی که از کد فوق برداشت می کنیم :

هر فایل از نوع Controller با کلمه دلخواهی شروع می شود و بدنبال آن کلمه Controller می آید و این نام دلخواه در URL سایت تاثیر می گذارد . قالب URL در MVC به فرم زیر است :

Web site address/Controller/Action

اکشن / کنترلر / آدرس اصلی سایت

برای مثال برنامه را اجرا کنید ، روی لینک About  کلیک کنید و URL صفحه را ببینید ، چیزی شبیه این می بینید (به جز شماره پورت که متفاوت است)

http://localhost:34256/Home/About

به متدها و رخدادهای صفحه در ام وی سی ، Action می گویند و در هر کنترلر می توانید چندین اکشن بیاورید و یا Overload کنید خروجی اکشن ها ، به صورت پیش فرض ActionResult است ولی می تواند هر نوع دیگری باشد (مثلا string) . در یک کنترلر شما ممکن است چندین اکشن داشت که برای هر اکشن یک View ایجاد می کنید و در آن ، مشخص می کنید که کاربر چه خروجی را باید مشاهده کند . برای مثال زیر اکشن About ، من اکشن دیگری به نام Contact ایجاد می کنم و در آن اطلاعات خود را در Message ذخیره می کنم :

public ActionResult Contact()
{
    ViewData["Message"] = "My Email : Amir.Madadi@hotmail.com and My Contact is 0422760153";
    return View();
}


توضیح اینکه شئی ViewData از نوع دیکشنری است که در آن می توانید کلید تعریف کنید و به آن مقدار دهید که من در اینجا کلیدی یه نام Message تعریف کرده ام و اطلاعات تماس را درون آن ریخته ام .

حال باید برای این اکشن یک View ساخت تا مشخص کنیم کاربر چه چیزی را ببیند. برای این کار روی اکشن کلیک راست می کنیم و گزینه Add View را انتخاب می کنیم :

سپس پنجره زیر ظاهر می شود :

در مورد امکانات این پنجره بعدا صحبت می کنیم ، فعلا پیش فرضها را قبول کنید و روی Add کلیک کنید . خواهید دید که فایلی به نام Contact.aspx در فولدر View ایجاد می شود . در تگ Asp:Contect id="Content2" خط زیر را اضافه کنید :

<h2><%: ViewData["Message"] %>h2>

کد صفحه Contact.aspx شما باید شبیه این باشد :

آموزش MVC

تدریس MVC

حال برنامه را اجرا کنید و بعد از شماره پورت تایپ کنید : Home/Contact/ یعنی چیزی شبیه این :

http://localhost:34256/home/contact

اگر متن تایپ شده را در صفحه می بینید، به خود تبریک بگویید ، چون اولین صفحه وب خود را با تکنولوژی MVC ساخته اید.

قبل از پایان ، نگاهی به ساب فولدرهای View بیندازید ، خواهید دید که به ازای هر Controller یک فولدر وجود دارد که در آن View های مربوطه نگهداری می شوند (در حال حاضر باید Account ، Home و Shared را ببینید) که فولدر Shared برای ذخیره کردن اجزای مشترک مثل Master Page ها استفاده می شود.

خب تا اینجای کار یک پروژه جدید MVC ایجاد کردیم ، کمی در مورد ساختار MVC صحبت کردیم و یک View جدید به پروژه اضافه کردیم . در مقاله بعدی صفحاتی با کارایی بیشتر ایجاد می کنیم، تا آن موقع مروری بر دانسته های خود درباره Linq to SQL داشته باشید ، چرا که بزودی از آن در صفحات Model استفاده می کنیم

 



:: برچسب‌ها: آموزش MVC , تدریس MVC , آموزش JQUERY , آموزش برنامه نویسی MVC , آموزشگاه تدریس MVC , دوره MVC ,
:: بازدید از این مطلب : 422
|
امتیاز مطلب : 5
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : دو شنبه 28 فروردين 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش PHP

 

آموزش php - قسمت اول - نصب Xampp

 آموزش PHP

تدریس PHP

برای شروع کار با php نیاز به نصب مفسر اون داریم که ما پکیج Xampp رو برای کارمون انتخاب کردیم. مراحل نصب رو باید به صورت زیر دنبال کنیم:

Wink در اولین مرحله خوش آمدگویی داریم پس Next رو کلیک می کنیم

مسیر نصب رو مشخص کنید

Choose Install Location

اضافه نمودن ادامه مطلب ]
برچسب ها و کلمات کلیدی :
کلمات را با "." (نقطه) از هم جدا کنید. مانند : عکس.عکس طبیعت.عکس منظره
موضوع :

 ثبت موقت و عدم نمایش در وبلاگ 
 در حال نمایش/نمایش داده شود 
این مطلب در تاریخ زیر در وبلاگ به نمایش درآید
تاریخ :              زمان :  : 
دسترسی به مطلب فقط مخصوص اعضا
این مطلب در صفحه اصلی نمایش داده شود
این مطلب به صورت ثابت در ابتدای وبلاگ نمایش داده شود؟(پست ثابت)
درج رمز برای ادامه مطلب ]

برای آموزش این قسمت و توضیحات کامل و چگونگی قرار دادن عکس در وبلاگ اینجا را کلیک کنید

< قبلی بعدی >
 

در صورتی که میخواهید Apache و MySQL به عنوان سرویس های ویندوز نصب بشند گزینه های Install Apache as Service و Install MySQL as Service رو تیک بزنید! انتخاب این گزینه ها اختیاریه. تنها نکته ای که هست اینه که در صورتیکه IIS رو سیستم تون نصبه و Apache رو نصب کنید باید حتما پورت IIS یا Apache رو تغییر بدید وگرنه Apache پیغام خطای Port Busy بهتون میده! بعد روش تغییر پروت IIS و Apache رو میبینیم. خوب تا اینجا کار تقریبا تمومه فقط باید دکمه Install رو بزنید.

Xampp Options

حالا اگه به مشکل خاصی نخورده باشید کار نصب تموم شده!

اینم کنترل پنل Xampp هستش که با اون میتونید Apache و MySQL رو Start یا Stop کنید! یادتون باشه اگر تیک Install as Service رو نزده باشید باید هر بار که می خواهید روی وب سایتتون کار کنید Apache و MySQL فعال باشند یعنی باید دکمه Start کنارشون رو کلیک کنید (Runningرو کنار Apache و MySQL نمایش بده)

Xampp Control Panel

حالا مرورگرتون را باز کنید و در آدرس بار مرورگر تایپ کنید localhost یا 127.0.0.1 هر کدومشو رو که بنویسید فرقی نمی کنه! اگر همه چیز خوب پیش رفته باشه باید صفحه زیر رو ببینید که باید تویه این صفحه زبان صفحات Xampp رو انتخاب کنید پس روی English کلیک کنید!

Xampp Splash Screen

حالا باید صفحه زیر براتون نمایش داده بشه! اگه این صفحه نمایش داده شد یعنی همه چی خوب پیش رفته اگه که نه تو بخش انجمن ها مطرح کنید تا بهتون کمک کنیم مشکل حل شه!

Xampp Install Success



:: برچسب‌ها: آموزش PHP , تدریس PHP , آموزش برنامه نویسی PHP , آموزشگاه برنامه نویسی PHP ,
:: بازدید از این مطلب : 161
|
امتیاز مطلب : 1
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : یک شنبه 27 فروردين 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش ASP.NET

 

 

مشكل نمايش منوهاي ASP.NET در IE 8
امروز متوجه شدم كه كنترل استاندارد منو ASP.NET در مرورگر Internet Explorer 8 بدرستي نمايش داده نمي شود مشكل به اين صورت است كه زير منوها (Dynamic Items) بصورت سفيد و خالي نمايش داده مي شوند. به جناب گوگل متوسل شدم و با كمي جستجو راه حل مشكل رو پيدا كردم.براي رفع اين مسئله بايستي حالت z-index مربوط به Dynamic menu style را برابر با يك عدد بزرگ قرار دهيم،بصورت ذيل:


DynamicMenuStyle BackColor="#B5C7DE" CssClass="IE8Fix"
.IE8Fix
{
    z-index: 1000;
}
 

 



:: برچسب‌ها: آموزش ASP , NET , تدریس ASP , NET , برنامه نویسی ASP , NET , دوره ASP , NET ,
:: بازدید از این مطلب : 256
|
امتیاز مطلب : 1
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : یک شنبه 27 فروردين 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش SQL

 

مقدمه :‌
كاربرد روز افزون بانك اطلاعاتي SQL مرا بر آن داشت تا مطالبي هر چند كوتاه جهت خوانندگان محترم سايت تهيه نماييم. قبلا از هر چيز لازم به ذكر است كه مطالب ذيل در حد آشنايي بوده و دوستان براي دستيابي به تكنيكهاي بيشتر مي بايست از كتابهاي مرجع و Book online خود SQL Server استفاده نمايند. در مطالب زير كه سلسله وار مباحث SQL Server  را مرور خواهيم كرد , سعي شده تا ابتدا مطالب مقدماتي جهت آشنايي آورده شود و سپس اگر عمري باقي بود به مطالب پيشرفته آن بپردازيم. همچنين براي يادآوري خدمت دوستان ابتدا مرور سريعي بر چند دستور SQL كه كاربرد بيشتري دارند خواهيم پرداخت و سپس به SQL Server  و مطالب آن خواهيم پرداخت . مطالب زير اكثرا از كتاب Microsoft SQL Server 7.0 Database Implementation Training  انتخاب گرديده است . اين كتاب به همراه CD‌آموزش آن به عنوان يك مرجع براي امتحانات مايكروسافت استفاده مي‌شود.
جداول بكار رفته نيز همگي در SQL Server 7.0 در Database Northwind موجود هستند.

 

دستور Select

 

اين دستور كه دستوري مستقل نيست و حتما بايد با اجزايي بكار رود جهت ساخت پرس و جو بر روي بانك اطلاعاتي بكار مي‌رود و ركوردهايي كه با شرايط اين دستور همخوان باشد به عنوان نتيجه پرس و جو برمي‌گرداند .  چهار كلمه كليدي وجود دارند كه بخشهاي ارزشمند اين دستور را تشكيل مي‌دهند :

 

1-select
2-from
3-where
4-order by

شكل كلي دستور :

Select [*|distinct column1, column2,…]
From table[,table2,…]
Where شرط
Order by نام فيلد يا شماره فيلد

مثال :

Select * from customers

اين دستور تمام ركوردهاي جدول customers را برمي‌گرداند. كه نتيجه 91 سطر از اطلاعات اين جدول خواهد بود

 

حال  اگر شرط

Country ='uk'

اضافه كنيم ، فقط اطلاعات مشتريان انگليس جواب خواهند بود كه به 7 سطر تقليل مي‌يابد.

select * from customers
where Country ='uk'

 

حال

select City,Country from customers
order by city

فقط ستونهاي نام شهر (city) و نام كشور (Country) را بر گردانده و بر اساس نام شهر مرتب ميكند. دستور بالا با دستور پايين هردو يك جواب را ميدهند :


select City,Country from customers
order by 1

 

كه 91 سطر بازگردانده خواهد شد . در نتيجه پرس و جو تعدادي سطر تكراري وجود دارد مانند شهر London  كه اگر از كلمه Distinct‌ در Select  استفاده كنيم اين سطرهاي تكراري حذف خواهد شد .


select distinct City,Country from customers
order by 1

 

و جواب 69 سطر خواهد بود.

 

استفاده از توابع در Select

1- Count  :

تعداد سطرهاي بازگردانده شده توسط select  را ميشمارد.

 

Select  Count(*)  from  Customers

 

where  Country ='uk'

 

در اصل تعداد مشترياني را ميشمارد كه در كشور انگليس هستند. كه عدد 7 جواب است.



2- Sum :

مجموع يك فيلد عددي را برمي‌گرداند.


Select  sum(Quantity)  from [Order Details]

 

مجموع فيلد Quantity  را براي فيلدهايي كه شماره محصول آنها ( Productid) برابر 11 است را محاسبه ميكند


نكته 1  :

 در دستور select  مي‌توان از اسم مستعار استفاده كرد ، يعني نام جديدي را براي يك ستون در نظر گرفت  به عنوان مثال select قبل را  به شكل زير بكار برد :


Select  sum(Quantity)  as Sum_QTY
from [Order Details]
where productid = 11

 

كه Sum_QTY يك اسم مستعار براي مجموع است. استفاده از كلمه كليديas  ‌اختياري است.


نكته 2  :

 در دستور select  هرگاه اسم فيلدي اسم خاص باشد و يا فاصله بين اسم باشد مثل  Order Details  كه فاصله بين اسم جدول است حتماُ از علامت براكت []  ميبايست استفاده كرد.


نكته 3 :

استفاده از group by   :

 

هنگامي كه از توابع count ‌   و  Sum  به همراه يك  فيلد ديگر در دستور          select  استفاده مي‌شود از group by    استفاده مي‌كنيم .

 

به عنوان مثال دستور زير جمع مقادير  فيلد  Quantity  را براي هر شماره محصول  محاسبه ميكند .


Select  productid, sum(Quantity) as sum_qty
from [Order Details]
group by  productid

 

 كه نتيجه مانند زير خواهد بود :


productid   sum_qty     

---------------------- 

61         603

3          328

32         297

6          301

41         981

64         740

9          95

12         344

 

در صورتيكه دستور ordr by 1  بعد از group by  استفاده كنيم نتيجه بر اساس كد محصول مرتب خواهد شد.

 

آموزش SQL SERVER
نكته 4 :

دستور  where   مي تواند خود  شامل  يك دستور select    باشد :

select * from Products
where ProductID  in
    ( select distinct ProductID from [order details] where Quantity >70)
order by ProductID

 

تنها نكته اي كه مي بايست توجه كرد اين است كه نام فيلدي كه در شرط آورده مي شود حتما در دستور select   آورده شود, به عبارت ديگر select   درون شرط تنها يك ستون را مي بايست برگرداند .

 

تمرين :  با فرض اينكه دو جدول Products و order details داراي ستون (فيلد) يكسان  ProductID  هستند , يك دستور Select  بنويسيد كه تمام فيلدهايي از Products را نشان دهد كه فيلد ProductID  آن با ProductID  جدول order details يكي باشد.؟

 

حل :  

Select pr.*
From  Products  as pr , [order details] as od
Where pr. ProductID = od. ProductID

 

قابل به ذكر است كه بيش از 90% از كارهايي كه ما برروي جداول انجام مي دهيم با select  و تركيبات آن انجام مي شود. لذا بدست آوردن تبحر در نوشتن select  ها مي تواند شما را در تهيه برنامه ها ياري كند.

تدریس SQL SERVER

3-Min,max :

بيشترين و كمترين مقدار فيلد را در بانك اطلاعاتي بدست مي دهد.

Select min (Quantity)
from [Order Details]


4-Top n :

تعداد n سطر اول بانك اطلاعاتي را برمي گرداند.

Select top 5 *
from [Order Details]

 

5 سطر اول بانك را برمي گرداند.

 

نكته 3 :  در حالت بالا اگر مقدار سطر 5 و 6 يكي باشد فقط سطر 5 جواب خواهد بود براي گريز از اين حالت از شكل زير در اين دستور استفاده ميكنيم :

 

Select top n with ties   *

 

From table


5-Into

Select * from table1 into table2

 

اطلاعات table1 را به table2 كپي ميكند. البته table2 بايد از قبل وجود نداشته باشد.

 

اين دستور خود table2  را ميسازد.

دستور select قويترين و كاربردي ترين دستور در sql است كه خود ماهها نيازمند تمرين و آموزش است . براي اطلاعات بيشتر به books online خود Sql Server  مراجع كنيد.

دستور Delete

 

براي حذف اطلاعات از يك بانك اطلاعاتي استفاده ميشود.

 

شكل كلي دستور :


Delete table1
Where شرط

مثال :

 

فرض كنيد جدول authors موجود باشد و فيلد كليد آن au_id باشد. براي حذف 10 سطر اول اين جدول از دستور زير استفاده مي كنيم :


DELETE authors
FROM
(SELECT TOP 10 * FROM authors) AS t1
WHERE authors.au_id = t1.au_id

دستور insert

 

براي اضافه كردن اطلاعات به يك جدول از اين دستور استفاده ميشود.


Insert into table1 (f1,f2,…)
Values (v1,v2,…)

 

كه f1,f2  نام فيلدها و v1,v2  مقادير آنها ميباشد.

 

البته ميتوانيد مقادير را نتيجه يك select  قرار داد.

مثال :


Insert into table1
Select top 10
From table2

 

مقدار 10 سطر اول را   از table2 را در table1 درج ميكند. البته بايد تعداد فيلدها يكي باشد. در غير اينصورت از values استفاده كنيد.



:: برچسب‌ها: آموزش SQL SERVER , تدریس SQL SERVER , آموزش SQL , آموزش SQL SERVER 2008 , دوره آموزشی SQL SERVER ,
:: بازدید از این مطلب : 110
|
امتیاز مطلب : 1
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : یک شنبه 20 فروردين 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش SEO

 

آموزش سئو-سئو-تگh1-موتور جستجوی گوگل-بهینه سازی سایت-بهینه سازی وب سایت

کسی منکر این نیست که تگ h1 از اهمیت زیادی در سئو سایت برخوردار هست و تمام فعالان حوزه بهینه سازی سایت وجود تگ h1 را ضروری می دانند و تگ h1 این امکان رو به موتور های جستجو می دهد که بهتر محتوای سایت شما رو درک کنند. اما شما حتما این قانون رو شنیدید که باید توی هر صفحه فقط  یک تگ h1 وجود داشته باشه. خوب این حرف تا حدودی درست هست ولی چنین قانونی صد رد صد هستش. می خواهید بدونید چرا ؟ پس این مقاله رو با دقت بخونید.

 

قانون استفاده از تنها یک تگ h1

سال های سال است که گفته می شود که باید تنها از یک تگ h1 استفاده نمود . این مورد بار ها و بار ها هم توسط کسانی که با بهینه سازی سایت آشنا هستند در انجمن ها و سایت ها به کاربران تازه کار توصیه می شود. شرایطی که این قانون رو بوجود آورده :

  • از اونجایی که هر صفحه می تونه فقط یک عنوان داشته باشه پس باید از یک تگ h1 استفاده نمود.
  • تگ h1 به کاربر در مورد محتوایی که در اون صفحه خواهد خوند اطلاع می دهد.

 

خوب اگر این دو تا اصل رو در نظر بگیریم چون تگ h1 عدد یک داره پس یک بار و تگ h2 چون دو هست باید دوبار ولی می دونید که این طوری نیست و ما توی هر صفحه بیشتر از دوبار ممکنه از h2 استفاده کنیم. یک بار دیگه بیاید که شماره اول این شرط رو بخونیم “از اونجایی که هر صفحه می تونه فقط یک عنوان داشته باشه پس باید از یک تگ h1 استفاده نمود.” به نظر شما این قانون نسبی نیست ! بیشتر اوقات ما در صفحات اول سایت های پرتال مانند که صفحه به چند بخش تقسیم شده ما بیشتر از یک عنوان در صفحه داریم . منظور من عناوین اخبار نیست منظورم بخش ها یا همون Sections هست. اگر به طور مثال ما در اون بخش یه قسمت آخرین خبر ها رو داشته باشیم و در قسمت دیگه آخرین ارسال ها رو مطمئنا ذات صفحه ما دو قسمتی هست مگر اینکه ما نادیده بگیریم یا به خاطر این قانون خودمون رو به کوچه علی چپ راهنمایی کنیم !

نقض قانون استفاده از تنها یک تگ h1

همون طور که می دونید من توی صفحه اول تات وب من از دو تا تگ h1 استفاده کردم. ولی خوب شما احتمالا تا الان با خودتون گفتید که همه اینایی که گفتی درست ولی از کجا که معلوم حرف تو درست باشه یه دنیا دارن می گن که نه ! در جواب باید بگم که استفاده از چند تا تگ h1 تا به حال چندین هزار بار از بخش پشتیبانی مدیران سایت گوگل پرسیده شده و در یک ویدئوی رسمی که در وبلاگ وب مستر سنترال گوگل هست آقای Matt Cutts که سرپرست این بخش جستجو هست دقیقا این جواب رو به صورت رسمی داده . به نظر شما اگر خود گوگل می گه مشکلی در استفاده از چند تا تگ h1 نیست آیا بقیه می تونن بگن گوگل غلط کرده ما از گوگل که موتور جستجو خود گوگله بیشتر می دونیم ؟!!!!

البته این مورد رو دقت داشته باشید که طبق صحبت آقای Matt Cutts درسته می شه چند تا تگ h1 داشت ولی دیگه درست نیست کل صفحه رو پر کنیم از تگ h1 . مطمئنا هم اینکه از لحاظ ظاهری قشنگ نمی شه و هم اینکه درست نیست.به یاد داشته باشید در بهینه سازی سایت هیچ چیز صد در صد نیست و همه چیز نسبی هستش



:: بازدید از این مطلب : 78
|
امتیاز مطلب : 1
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : پنج شنبه 17 فروردين 1391 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش SQL

 

آموزشگاه تحلیل داده برگزار کننده دوره های تخصصی SQL


تماس :  02188146330 - 02188146323 - 09123840871


دانلود کتب تخصصی برنامه نویسی در سایت رسمی آموزشگاه : 

www.tahlildadeh.com



:: بازدید از این مطلب : 143
|
امتیاز مطلب : 1
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : چهار شنبه 9 فروردين 1398 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش PHP

 

متدهای جادویی در PHP

PHP شامل تعدادی از متدهاییست که با نام ” متدهای جادویی ” شناخته میشن.این متدها با دو زیر خط (Underline یا underscore) شروع میشن.این متدها در جاهای مختلف استفاده میشن و خیلی مفید هستن.در ادامه نگاهی میکنیم به متهای جدویی در PHP .

 

متد سازنده کلاس یا __construct()

اگر با برنامه نویسی شیء گرا در PHP آشنا باشید حتمن با این متد کار کردید.این متد هنگامی که یک نمونه از یک کلاس ساخته میشه اجرا خواهد شد.مثال زیر رو در نظر بگیرید :

class Animal{

function __construct()

{

echo 'Animal';

}

}

$animal = new Animal();

// output : Animal 

در کلاس Animal یک متد ایجاد کردیم با نام __construct() و در این متد رشته Animal رو نمایش دادیم. هنگامی که از کلاس Animal یک نمونه ایجاد میکنیم تابع __construct() اجرا میشه و رشته Animal در خروجی نمایش داده میشه.

متد مخرب یا __destruct()

این متد برعکی متد __construct عمل میکنه.یعنی هنگامی که کلاس میخواد از حافظه خارج بشه این متد اجرا میشه.

مثال :

class DB{

…..

function __destruct()

{

$db->disconnect();

}

…..

}

$db = new DB();

unset($db); 

در کلاس بالا هنگامی که تابع unset میخواد کلاس $animal رو از حافظه خارج کنه متد __destruct() اجرا میشه و ارتباط با دیتابیس قطع میشه.

Overloading در PHP

در PHP واژه Overloading به معنی ایجاد متدها و متغیرهای داینامیک است. این متدها و متغیر ها به وسیله متدهای جادویی یا Magic Methods ساخته میشن.

ساخت متغیرهای داینامیک در PHP

متد __set

این متد برای ایجاد متغیرهای داینامیک استفاده میشه.متغیرهایی که یا داخل کلاس وجود ندارن یا متغیرهایی که در خارج از کلاس بهشون دسترسی نداریم.

مثال :

class Car

{

private $vars = array() ;

function __set($name , $value)

{

$this->vars[$name] = $value ;

}

}

$car = new Car();

$car->wheel = 4 ;

$car ->color = 'red';

$car->name = 'BMW'; 

برای داشتن متغیرهای داینامیک بهترین راه استفاده از آرایه هاست. در کلاس Car یک آرایه با نام $vars ایجاد کردیم . دسترسی به آرایه $var به صورت Private تعریف شده یعنی در بیرون از کلاس به این آرایه دسترسی نداریم.سپس با متد __set متغیر $var رو مقدار دهی میکنیم.متد __set دو پارامتر میگیره.اولی نام کلید (key) و دومی مقدار (value) .

هنگامی که شما از کد زیر استفاده میکنید :

$car->color = 'red'; 

در حقیقت دارین ار زیر رو انجام میدید :

$car->vars['color'] = 'red'; 

همینطور که میبینید استفاده از متد __set خیلی میتونه در کار با کلاسها به ما کمک کنه.

متد __get()

هنگامی که از متد __set برای ایجاد متغیرهای داینامیک در کلاس استفاده میکنیم نیاز داریم که بتونیم به این متغیرهای داینامیک دسترسی داشته باشیم و از مقادیر این متغیرها استفاده کنیم.با استفاده از متد __get به راحتی میتونیم این ار رو انجام بدیم.

class Car

{

private $vars = array() ;

function __set($name , $value)

{

$this->vars[$name] = $value ;

}

function __get($name)

{

return $this->vars[$name];

}

}

$car = new Car();

//set values

$car->wheel = 4 ;

$car ->color = 'red';

$car->name = 'BMW';

// Get values

echo $car->color ; 

متد __get یک پارامتر میگیره که این پارامتر در اصل نام متغیرمونه. هنگامی که از کد :

echo $car->color ; 

استفاده میکنیم در حقیقت کد زیر در پشت صحنه اتفاق میافته :

echo $car->vars['color'] ; 

ساخت متدهای داینامیک در PHP

در قسمت قبل دیدید که چطوری میتونیم در PHP متغیرهای داینامیک بسازیم و یاد گرفتیم که چطوری از مقادیرشون استفاده کنیم.در این قسمت خواهیم فهمید چطوری میتونیم متد ها یا توابع داینامیک رو با استفاده از متدهای جادویی در PHP پیاده سازی کنیم .

   __call متد جادویی

با استفاده از متد __call میتونیم توابعی به صورت داینامیک بسازیم.این تابع دو مقدار میگیره اولی نام متد و دومی پارامترهای تابع مورد نظر رو میگیره. برای درک بهتر به مثال زیر دقت کنید :

مثال : فرض کنید شما یک کلاس برای کار با دیتابیس نوشتید.خیلی خوبه که در کلاس شما توابعی باشه تا به صورت مستقیم با فیلدهای جدول شما در ارتباط باشه.مثلا هنگامی که میخواید با استفاده از فیلد ID درون دیتابیس جستجو کنید تابعی داشته باشید به صورت findByID یا اگر جستوجوی شما بر اساس فیلد name باشه با تابع findByName بتونید دستور SQL مورد نظر رو اجرا کنید.برای این کار دوراه دارید.

اول اینکه به ازای هر فیلد جدولتون یک تابع بسازید مثلا :

class Database

{

…

function findByID($id)

{

$sql = " SELECT * FROM users WHERE id = $id";

return $this->db->query($sql);

}

function findByName($name)

{

$sql = "SELECT * FROM users WHERE name = $name";

return $this->db->query($sql);

}

}

فرض کنید تعداد فیلدهای جدول شما زیاد باشه. استفاده از این روش کار منطقی نیست.

حالا ببینیم روش دوم برای این کار چیه.

روش دوم استفاده از متد جادویی __call

class Database

{

function __call($method , $args)

{

$field =strtolower( substr($method , 6 , strlen($methods) – ۶)) ;

$sql = "SELECT * FROM $this->table WHERE $field = $args[0] " ;

return $this->db->query($sql);

}

}

$db = new Database();

$db->findByID(10);

$db->findByName('saeed');

حالا ببینیم متد جادویی __call چه کاری انجام میده که میتونیم متدهای داینامیک بسازیم.

همینطور که در بالا گفتم این متد دو پارامتر میگیره.اولی نام تارع و دومی آرایه ای از پارامترهایی که باید به تابع داینامیک پاس بشن.مثال بالا یک مثال کاملا عملی برای استفاده از متد __call بود که در خیلی جاها کاربرد داره.

$field =strtolower( substr($method , 6 , strlen($methods) – ۶)) ; 

در خط بالا ابتدا از متغیر $method قسمت findBy رو حذف کردیم.رشته ای که باقی میمونه نام فیلد جدولمونه.سپس به حروف کوچک تبدیلش کردیم و داخل دستور SQL ازش استفاده کردیم.

با این کار به تعداد فیلدهای جدول راه هست برای جستو توی دیتابیس!!

متد جادویی __callStatic

این تابع از PHP نسخه ۵٫۳ معرفی شد. دقیقا مثل __call استفاده میشه اما همینطور که از نامش مشخصه برای متدهای static کاربرد داره.

گاهی اوقات ممکنه لازم داشته باشیم یک شیء رو به یک رشته تبدیل کنیم.اگر بخواید با دستور echo یک شیء رو در خورجی چاپ کنید یک خطا اتفاق میافته :

$car = new Car();

echo $car;

// fatal error: Object of class Car could not be converted to string

متد __toString()

این زمانی اجرا میشه که بخوایم یک شیء رو در خروجی نمایش بدیم.

class Car

{

function __toString()

{

return get_class();

}

}

$car = new Car();

echo $car ; // Car

اگر داخل کلاس متد __toString() رو پیاده سازی کرده باشیم هنگامی که با دستور echo شیء $car رو میخوایم توی خروجی نمایش بدیم با خطا مواجه نمیشیم.در مثال بالا هنگامی که دستور echo $car; اجرا میشه تابع get_class() اجرا میشه.

باد آوری : تابع get_class() نام کلاس جاری رو بر میگردونه.

Serialization

Serialization به تبدیل یک شیء یا یک آرایه به رشته گفته میشه.از Serialization برای نگهداری اشاء در فایل یا دیتابیس استفاده میشه.هنگامی یک شیء رو به حالت اول برگردونیم Unserialize گفته میشه.هنگامی یک کلاس رو serialize میکنیم تمام متغیرها و اعضای کلاس ذخیره خواهند شد.اما مشکلی که هست اینه که ممکنه نخواسته باشیم مثلا متغیری که کانکشن دیتابیس رو تگهداری میکنه هم ذخیره یشه.برای این کار از متد __sleep() استفاده میکنیم.

متد جادویی __sleep()

این متد هنگامی اجرا میشه که تابعserialize() رو بخوایم روی شیء اجرا کنیم.داخل این متد میتونیم مشخص کنیم که چه متغیرهایی از کلاس اجازه دارن serialize بشن.این متد باید یک آرایه رو برگردونه.

مثال :

class My

{

public $a;

public $b;

function __construct(){

$this->b = 'salam';

$this->a = 'a';

}

function __sleep()

{

//return get_object_vars($this);

return array('b');

}

}

$m = new My();

$a = (serialize($m));

var_dump(unserialize($a));

/*خروجی :

object(My)#2 (2) { ["a"]=> NULL ["b"]=> string(5) "salam" }

*/

همینطور که میبینید در خروجی کد بالا فقط متغیر $b دارای مقدار هست.این به این خاطره که آرایه ای که در متد __sleep() برگردانده شده فقط شامل متغیر b هست.

return array('b'); 

این هط میگه که هنگام serialize کلاس My فقط متغیر b حق ذخیره شدن رو داره.

متد __wakeup()

این متد هنگامی اجرا میشه که تابع unserialize() اجرا میشه.به عنوان مثال اگر هنگام serizalize یک شیء اتصال به دیتابیس رو بسته باشید داخل متد __wakeup میتونید این اتصال رو دوباره برقرار کنید.

class Database {

//...

public function __wakeup() {

// reconnect to the network

$this->connect();

}

//...

}

متد __invoke()

این متد هنگامی اجرا میشه که بخواید از یک شیء به عنوان یک تابع استفاده کنید.

 

خروجی بالا به شکل زیره :

__invoke method. $x = 5

متد جادویی __autoload()

متدهایی که در قسمت قبل آموزشش رو مشاهده کردید همگی در کلاسها قابل استفاده بودن. تابع __autoload یک تابع مستقل محسوب میشه.این تابع برای لود مستقیم کلاسها به کار میره.هنگامی که میخواید از یک کلاس یک شیء ایجاد کنید ابتدا نیاز هست که با دستور include یا require کلاس مورد نظر رو لود کنیم.

require 'classes/database.class.php';

$db = new Database();

با استفاده از تابع __autoload از require کردن های زیاد راحت میشیم.

در مثال بالا تمام کلاسهای پروژه ما در پوشه classes نگهداری میشن.

function __autoload($classname)

{

$class = 'classes/'.strtolower($classname).'.class.php';

require $class;

} 

با استفاده از تابع بالا در هر جای پروژه میتونیم به صورت خودکار کلاسها رو لود کنیم.

$db = new Database();

حرف آخر

متدهای جادویی در PHP خیلی مفید هستن و انعطاف زیادی به برنامه نویسی شیء گرا میدن.با استفاده از این متدها لذت برنامه نویسی شیء گرا دوچندان میشه.

اگر دقت کرده باشید در مقاله بالا سعی کردم ازاصطلاحات ساده برای دوستانی که اول راه هستند و با برنامه نویسی شیء گرا آشنایی زیادی ندارن استفاده کنم.مثلا یک جا از کلمه “متد (Method) ” و جای دیگه از کلمه ” تابع (function) ” استفاده کردم.منظورم از این کار این بوده که به کسانی که اول راه شیء گرایی هستن بفهمونم این ها فقط “اصطلاح” ـه و ممکنه در جاهای مختلف نامهای مختلفی داشته باشه.هنگامی که یک تابع در یک کلاس قرار میگیره به اصلاح بهش میگن ” متد ” اما مهم نیست بهش چی میگن مهم اینه که “تابع” همون “متد” ـه.

مهم درک مفهوم شیء گرایی هست و لطفا ذهن خودتون رو درگیر این اصطلاحات نکنید.



:: بازدید از این مطلب : 156
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0
تاریخ انتشار : پنج شنبه 25 اسفند 1390 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش UML

 

بیشتر بدانید:

UML زبان استاندارد جهانی برای مدل‌سازی
سطح : مقدماتی

با كمی اغماض می‌توان ادعا كرد كه در ميان شاخه‌های مختلف مهندسی در هركدام كه دارای قدمت بيشتری است، همگرايی بيشتری در اتخاذ روش و ابزار برای انجام اعمال نسبتاً مشابه از ميان متخصصان و متوليان آن رشته وجود دارد. به طور مثال در حال حاضر برای اجرای يك سازه در هر نقطه از دنيا، مهندسين عمران از يك روند همسان با توالی مشابه شامل:
الف)توليد طرح عمرانی
ب)پياده‌سازی نقشه
ج)محاسبات سازه‌ای
د)اجرا استفاده می‌كنند
ولی در رشته نوپايی چون مهندسی نرم‌افزار، گاه چنان روش‌ها متفاوت است كه از ديد يك ناظر خارجی، دو تيم نرم‌افزاری مختلف كه هر دو قصد توليد محصولی مشابه را دارند، دو تيم در رشته‌های متفاوت به نظر بيايند. يكی از علل وجود تمايز در توليد نرم‌افزار ميزان تخصص نيرو و زمان به پياده‌سازی می‌باشد.بدين معنا كه در نزد بسياری از برنامه‌نويسان توليد نرم‌افزار معادل است با توليد كد. ولی از نظر بعضی ديگر توليد كد تنها بخشی از توليد نرم‌افزار است كه در بسياری از موارد حتی منابع و زمان. اختصاص داده شده به آن در طول پروسه.توليد نرم‌افزار كمتر از50% می‌باشد.

از يك ديدگاه كلی، پروسه توليد نرم‌افزار را می‌توان به دو بخش كلی شامل:
الف)تحليل و طراحی ب)پياده‌سازی تقسيم كرد. از ديدگاه دسته اول، برنامه‌سازان، تحليل و طراحی صرفاً فهم ذهنی مساله می‌باشد كه دقيقا پس از آن بايستی اقدام به پياده‌سازی كرد. در حاليكه در نظر دسته دوم، فاز تحليل و طراحی پر اهميت‌تر از فاز دوم می‌باشد كه بايستی برای انجام آن از متدولوژی‌ها و روش‌های استاندارد استفاده كرد. UML يك زبان مدلسازی می‌باشد كه در فاز تحليل و طراحی مورد استفاده قرار می‌گيرد.

مدل‌سازی (Modelling) چيست؟
مدل‌سازی يكی از تكنيك‌های ذهنی بشر می‌باشد كه نه تنها برای اهداف علمی، بلكه برای انجام امور روزمره بشر به دفعات مورد استفاده قرار می‌گيرد. مدل‌سازی به طور كلی يعنی شبيه‌سازی يك محيط با اندازه‌های متفاوت و از محيط واقعی و احتمالا مواد و مصالحی متمايز از جنس مواد و مصالح محيط مدل شده. در مدل‌سازی ابتدا اجزای محيط واقعی انتخاب شده و متناسب با هدف مورد نظر از مدل‌سازی خصوصياتی از هريك از اجزای واقعی انتزاع می‌شود، يعنی به ازای هزيك از اجزای محيط واقعی يك موجوديت تجريدی ساخته می‌شود و با برقراری ارتباطی مشابه با ارتباط اجزای واقعی، در ميان موجوديت‌های تجريدی، محيط واقعی مدل می‌شود. برای روشن شدن مثالی می‌زنيم:

فرض كنيم قصد داشته باشيم در فاز طراحی يك اتومبيل ميزان موفقيت هوا در مقابل اتومبيل در حال حركت را بسنجيم يكی از راه‌ها برای انجام اين آزمايش، ساخت يك اتومبيل واقعی، راندن و سپس اندازه‌گيری مقاومت هوا می‌باشد كه انجام اينكار اگرچه ما را به هدف می‌رساند، ولی دارای هزينه بالاييست چرا كه بايستی ابتدا ماشين ساخته شود، سپس مورد آزمايش قرار گيرد.در اين صورت اگر در آزمايش به نتيجه مورد نظر نرسيم، بايستی دوباره طراحی را تغيير داد، و پس از ساخت يك نمونه واقعی ديگر آزمايش را تكرار كنيم و اين روند آنقدر ادامه پيدا كند تا طراحی مناسب برای اتومبيلی با خصوصيات مورد نظر شكل گيرد. می‌بينيم كه چنين روشی بسيار پرهزينه است و اين هزينه هم شامل هزينه‌های اقتصادی است و هم هزينه‌های زمانی، چون علاوه بر اين كه در هر مرحله آزمايش بايستی اتومبيل با صرف هزينه بالا ساخته شود، زمان ساخت آن نيز طول خواهد كشيد.

ولی متخصصان برای انجام چنين آزمايشی به مدل روی می‌آورند. يعنی يك جسم فيزيكی كوچك با خصوصيات آئروديناميكی لحاظ شده در طراحی اتومبيل، ساخته می‌شود و با قرار دادن آن در يك تونل باد، حركت اتومبيل در فضای واقعی را شبيه سازی می‌كنند و بدين طريق ميزان مقاومت هوا را می‌سنجند.

نكات مورد توجه در اين مدل‌سازی، يكی اندازه مدل و ديگری خصوصيات آن می‌باشد. مدل بسيار ساده و كوچك می‌باشد و از طرفی تنها خصوصيت آئروديناميكی اتومبيل در مدل لحاظ می‌شود. چرا كه هدف ما از مدل‌سازی تنها بررسی خصوصيات آئروديناميكی اتومبيل است و مدل الزاماً نبايستی از جنبه‌های ديگر، شباهتی به اتومبيل واقعی داشته باشد. مثلا در ساخت چنين مدلی به هيچ‌وجه به استحكام اجزا و يا زيبايی مدل توجه نمی‌شود چون بررسی چنين خصوصياتی خارج از هدف اين مدلسازی خاص است.

مثال بالاتنها يك جنبه از مدل‌سازی را بيان می‌كند و آن جنبه شناختExploration می‌باشد. يعنی در مدلسازی‌های مشابه مدل‌سازی فوق‌الذكر، هدف از مدل‌سازی تنها شناخت محيط مورد مدل می‌باشد. يك جنبه ديگر از مدل‌سازی تبيين (specitication) می‌باشد. يعنی گاه برای معرفی و ارائه خصوصيات يك موجوديت واقعی يك مدل از آن ارائه می‌شود. نقشه جغرافيايی مثال خوبی است كه اين جنبه از مدل‌سازی را مورد نظر دارد.

پس می‌توان گفت كه هدف از مدل‌سازی دو چيز می‌باشد:
الف)شناخت(exploration)
ب)تبيين(specification)
تدریس UML
كه بر اساس تعريف مسئله، مدل‌سازی يكی يا هردو هدف را در نظر می‌گيرد.

نكته ديگری كه بايستی در مدل‌سازی توجه كرد، روش (methodo logy) ساخت يك مدل می‌باشد. در بعضی موارد مدل چيز بسيار ساده‌ای است و به راحتی ساخته می‌شود. ولی در بعضی از موارد مدل خود بسيار پيچيده می‌باشد هر چند از نظر منطقی غيرممكن می‌نمايد ولی می‌توان ادعا كرد كه در بعضی موارد مدل پيچيده‌تر از موجوديت واقعی است. زمينه‌ای كه اين ادعا را در آن مصداق فراوان دارد، نرم‌افزار می‌باشد. بنابراين در شاخه‌ای از مهندسی كه مدل‌سازی حائز اهميت فراوان می‌باشد قطعا روش‌های استانداردی برای ساختن مدل وجود دارد. در نرم‌افزار، روش‌های توليد نرم‌افزار مانند SSAPM ,RUP,USDP, در واقع روش‌های مدل‌سازی می‌باشند. هر روش مدل‌سازی طبيعتا نيازمند مصالحی برای ساخت مدل می‌باشد كه در روش‌های مدل‌سازی نرم‌افزاری مصالح لازم برای توليد مدل، زبان‌های مدل‌سازی می‌باشند.

UML چيست؟
Unified Modelling Language يك زبان مدل‌سازی است كه درسال 1995 به وسيله شركت Rational معرفی شد. UML يك زبان شی‌گراست يعنی اجزا اين زبان متناسب با مفاهيم به كاررفته و پارادايم شی‌گرائی طراحی شده‌اند.

پس از ارائه مفاهيم شی‌گرائی در ابتدای دهه 80 ميلادی به تدريج روش‌های شی‌گرائی توليد نرم‌افزار به وسيله افراد و سازمان‌های مختلف ارائه گرديد. اين روش‌ها در برگيرنده يك مجموعه علائم برای بيان مفاهيم و ايده‌ها از يك سو و يك طرح كاری برای توليد نرم‌افزار از سوی ديگر بود كه از مهم‌ترين اين روش‌ها می‌توان به OMT,BOOCH,OOSE…. اشاره كرد.

اگرچه داشتن يك روش استاندارد امری مطلوب است ولی تفاوت روش‌ها امريست طبيعی و با توجه به تفاوت فراوان در نوع مسائل می‌توان گفت كه حتی وجود روش‌های مختلف الزامی است چرا كه مثلا در يك پروژه بسيار بزرگ نمی‌توان همان روشی را به كار برد كه در يك پروژه كوچك. ولی زبان و مجموعه علائم از چنين قاعده‌ای پيروی نمی‌كند و داشتن يك زبان استاندارد امری بسيار مطلوب و از بعضی ديدگاه‌ها حتی الزامی می‌باشد. يكی از الزامات مهم در داشتن يك زبان استاندارد همگانی ناشی از نقشی است كه زبان در ارتباطات به عهده دارد. البته چندگونه‌بودن زبان خود مولد مشكلات متعددی است.

با هدف ارائه يك زبان استاندارد فراگير شركت Rational با گردآوری سه نفر از ارائه‌كنندگان معتبرترين روش‌های شی‌گرا يعنی Irar jacobson مبدع روش OOSE ,BOOCH مبدع روشی با همين نام، Rambaugh مبدع روش OMT و با اخذ نقاط قدرت سه روش فوق‌الذكر، يك زبان استاندارد به نامUML ارائه كرد. اين زبان پس از ارائه از سوی (Object Mamgement Group) كه يكی از معتبرترين سازمان جهانی در زمينه شی‌گرائی می‌باشد بعنوان يك استاندارد پذيرفته شد. پس از ارائه اين زبان و پذيرفته شدن آن به عنوان يك استاندارد جهانی در زمينه نرم‌افزار، علاوه پروسه اين زبان و ارائه متولوژی‌های مبتنی بر آن مانند usop و rup از سوی افراد و سازمان‌های مختلف، متخصصين در پی يافتن كاربرد اين زبان در زمينه‌های ديگر فنی و مخصوصی بر آمدند. برآيند اين تلاش‌ها در حال حاضر uml را به عنوان قدرتمندترين زبان مدل‌سازی در دنيای نرم‌افزار مطرح ساخته است.

آموزش UML



:: برچسب‌ها: آموزش UML , تدریس UML , دوره آموزشی UML , آموزش RUP , تدریس RUP ,
:: بازدید از این مطلب : 216
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0
تاریخ انتشار : چهار شنبه 24 اسفند 1390 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش جاوا

آموزش JAVA

 

اولين فنجان قهوه (قسمت اول از سوم)
آموزش جاوا




اولین فنجان شما از ] قهوهء[ جاوا ( برای  Microsoft Windows )

چند دستورالعمل  جزئی؛ برای اولین برنامه شما

 

 

                                                            

دستورالعمل های زیر به شما کمک میکنند اولین برنامهء جاوای خود را بنویسید. این دستورالعملها برای کاربران سیستمهای Microsoft Windows  ، که شامل Windows 9598/2000/ME/XP/NT 4.0 میشود ، نوشته شده. اول با کارهایی که قبل از نوشتن اولین برنامه باید انجام دهیم شروع میکنیم. سپس، با توضیح مراحل ساختن یک application ، مراحل ساختن یک applet و توضیحاتی در مورد error هایی که با آنها مواجه خواهید شد، به کار خود ادامه میدهیم.

 

1. کارهایی که اول باید انجام دهیم

 

2. ساختن اولین application شما

 الف. نوشتن یک فایل جاوا

  ب. compile کردن فایل

  پ. اجرای برنامه

 

3. ساختن اولین applet شما

 

4. بعدش چیکار کنیم!

 

  

 

1. کارهایی که اول باید انجام دهیم

برای نوشتن اولین برنامهء خود، به موارد زیر نیاز دارید :

1-  . The JavaTM 2 Platform, Standard Edition  شما میتوانید  SDK (Software Development Kit = بستهء توسعهء نرم افزار ) را از اینجا بگیرید. مواظب باشید که SDK را download میکنید، نه JRE .

2- یک ویرایشگر متن . در این مثال ما از NotePad استفاده خواهیم کرد. برای پیدا کردن NotePad ، در منوی Start ؛ Programs > Accessories > NotePad را  انتخاب کنید. اگر از ویرایشگر متن دیگری استفاده میکنید، باز هم میتوانید از این دستورالعملها استفاده کنید.

دو مورد بالا تمام چیزیست که شما برای نوشتن اولین برنامهء جاوای خود به آن نیاز دارید.


توجه: ممکن است که شما بخواهید برای نوشتن برنامهء خود از یک IDE (Integrated Development Environment)  استفاده کنید. شما میتوانید از  Java 2 SDK, Standard Edition v. 1.4 استفاده کنید که دربر دارندهء یک IDE به نام Sun™ ONE Studio 4, Community Edition که قبلا با نام ForteTM for JavaTM, Community Edition شناخته میشد، استفاده کنید. شما میتوانید این IDE را از اینجا بگیرید.



 

2. ساختن اولین application شما

اولین برنامهء شما،HelloWorldApp ، خیلی ساده به شما پیغام "Hello World!" را نشان میدهد. برای نوشتن این برنامه شما باید:

- یک فایل جاوا بنویسید. یک فایل جاوا تشکیل شده از متنی که به زبان برنامه نویسی جاوا نوشته شده؛ متنی که برای شما و دیگر برنامه نویسان جاوا قابل فهم باشد. شما میتوانید از هر ویرایشگر متنی برای نوشتن این برنامه استفاده کنید.

 

- Compile کردن فایل جاوا به bytecode . Compiler (javac) ، فایل شما را گرفته و متن آنرا به دستورالعملهایی تبدیل (ترجمه) میکند که قابل خواندن توسط "ماشین مجازی جاوا" (JVM = Java Virtual Machine) باشد. Compiler این دستورالعملها را به bytecode تبدیل میکند.

 

- اجرای برنامهء تبدیل شده به bytecode . مفسر جاوا (java interpreter) که روی کامپیوتر شما نسب شده، Java VM را پیاده سازی و اجرا میکند. این مفسر bytecode های شما میگیرد و با ترجمه کردن آنها به دستورالعملهایی که برای کامپیوتر شما قابل فهم هستند، آنها را اجرا میکند.

 

 

 

چرا bytecode ها چیزهای خوبی هستند!

احتمالا شنیده اید که با برنامه نویسی جاوا، میتوانید "یکبار بنویسید، هرجا میخواهید اجرا کنید." این بدان معنیست که در هنگام compile کردن برنامه، اطلاعات فقط برای استفاده از یک محیط (platform) خاص تولید نمیشوند. بلکه bytecodeها تولید میشوند که دستورالعملهایی برای استفادهء "ماشین مجازی جاوا"((JVM = Java Virtual Machine میباشند. در نتیجه اگر محیط شما –اعم از اینکه Windows ، UNIX،MacOS و یا یک Internet Browser باشد- دارای JVM باشد؛ میتواند bytecodeها را بخواند.

 

 


الف. نوشتن یک فایل جاوا.

برای ساختن اولین فایل جاوا، دو راه حل دارید:

- میتوانید فایل HelloWorldApp.java را روی کامپیوتر خود ریخته و از نوشتن دستورها خودداری کنید. سپس میتوانید مستقیما به قسمت ب بروید.

- یا، میتوانید دستورهای زیر را دنبال کنید:

1.NotePad را باز کنید و کدهای زیر را در آن وارد نمایید:

 

 

 

 

/**

 * The HelloWorldApp class implements an application that

 * displays “Hello World!” to the standard output.

 */

public class HelloWorldApp {

    public static void main(String[] args) {

        // Display “Hello World!”

        System.out.println(“Hello World!”);

    }

{

 

هنگام تایپ کردن مراقب باشید

همهء کدها را دقیقا همانطور که در بالا نوشته شده بنویسید. زیرا compiler و مفسر (interpreter) جاوا ، case-sensitive هستند؛ یعنی به کوچک یا بزرگ بودن حروف حساسند.

 HelloWorldApp   helloworldapp

 

 

2.این کد را در یک فایل ذخیره کنید. در menu bar، File > Save As را انتخاب کنید.

- در قسمت Save in  دایرکتوری را که میخواهید فایلتان را در آن ذخیره کنید؛ مشخص نمایید. در این مثال، دایرکتوری java در درایو c محل ذخیرهء فایل انتخاب شده.

- در قسمت  File name تایپ کنید : "HelloWorldApp.java" .

- در قسمت Save as type ، Text Document را انتخاب کنید.

 

 

 

حالا دکمهء Save را بزنید و از NotePad خارج شوید.

 

 



:: بازدید از این مطلب : 83
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0
تاریخ انتشار : چهار شنبه 24 اسفند 1390 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش SQL

 

خود آموز SQL به شما نحوه استفاده از SQL و دستیابی وکنترل داده ها را توسط آن در MY SQL,MS ACCESS ,SQL SERVER,  ORACLE, SYBASE,DB2  و دیگر سیستم های پایگاه داده ای آموزش میدهد.

SQL چیست؟

SQL بر پایه زبان پرس و جو ساخت یافته میباشد
SQL  به شما اجازه دستیابی و کنترل داده ها را می دهد
SQL یک استاندارد ANSI( انجمن استاندارد ملی آمریکا) میباشد.

SQL چه کاری انجام میدهد؟

SQL میتواند درخواستهای پیوسته یک پایگاه داده را اجرا کند
SQL متواند دوباره اطلاعات را از پایگاه داده پس بگیرد
SQL میتواند یک رکورد شامل اطلاعات را در پایگاه داده ذخیره کند
SQL متواند اطلاعات پایگاه داده را به روز رسانی کند
SQL میتواند هر قسمت از اطلاعات را از پاگاه داده اصلاح یا حذف کند
SQL میتواند یک پایگاه داده تازه بسازد
SQL میتواند جداول حاوی اطلاعات جدید را به پایگاه داده اضافه کند
SQL اجازه تنظیم جداول و شیوه دستیابی به اطلاعات و نحوه نمایش اطلاعات را میدهد.

SQL یک استاندارد است اما ...

با وجود آنکه SQL یک استاندارد است اما ورژن های مختلفی از آن وجود دارد

به هرحال SQL  یک استاندارد ANSI   میباشد و با آن مطابقت دارد و از تمام دستورات اصلی  از طریق مشابه پشتیبانی میکند مثل(SELECT,UPDATE ,DLELET,INSERT,WHERE) 
نکته : بسیاری از برنامه های پایگاه داده ای SQL شاخه های اختصاصی خودشان را به استاندارد SQL اضافه میککنند.

استفاده از SQL در وب سایت خود

اگر میخواهید وب سایتی بنویسید که از پایگاه داده اطلاعاتی را نمایش دهد به ابزار زیر احتیاج پیدا خواهی کرد:
یک برنامه RDBMS (MY SQL,SQL SERVER, MS ACCESS)
یک زبان سمت کاربر مانند PHP ,ASP,
SQL 
HTML/CSS

RDBMS (سیستم مدیریت پایگاه داده ای)

RDBMS  بر پایه RELATIONAL DATABASES MANAGEMENT SYSTEM  میباشد.


RDBMS  پایه ای برای  SQL  و تمام سیستم های پایگاه داده ای جدید(,SQL SERVER,  ORACLE, SYBASE,DB2  MYSQL,MS ACCESS   ) میباشد.


در RDBMS  داده ها و اطلاعات موجود در پایگاه داده در جداول ذخیره میگردد.


جدول یک مجموعه ای است از اطلاعات ثبت شده مرتبط و وابسته به هم که از ستون ها و ردیف ها تشکیل شده است.

 

 



:: بازدید از این مطلب : 106
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0
تاریخ انتشار : چهار شنبه 24 اسفند 1390 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش SQL Server

دو نوع سیستم دیتابیس داریم که در زیر به معرفی آنها می پردازیم:

 OLTP (online transaction processing).1

در این نوع سیستم بوسیله نرمال کردن داده ها (در مورد نرمال سازی دیتابیس در پست های بعدی توضیح داده خواهد شد ) بروز رسانی داده ها بسیار سریع و کوتاه خواهد شد. تعییرات زیاد در این نوع سیستم ها،پشتیبان گیری از دیتابیس را امری الزامی می سارد.سرعت خوب در اینگونه سیستم ها امری ضروری است. بنابراین در این نوع سیستم ها از ایندکس گذاری به وفور استفاده می شود.(در مورد ایندکس در پست های بعدی توضیح داده خواهد شد)از ایندکس گذاری به منظور دسترسی سریع به داده های جداول استفاده می شود.

OLAP (online analytical processing) .2

در این نوع سیستم ها بروز رسانی داده ها به ندرت انجام می شود. بنابراین پشتیبان گیری از دیتابیس به عنوان یک عمل نهایی تلقی می شود و کمتر انجام می شود. بیشتر پردازش مربوط به آنالیز داده های موجود می باشد. برخلاف سیستم های OLTP از طراحی استاندارد و نرمال سازی استفاده نمی شود. از ایندکس گذاری هم به ندرت استفاده می شود. در این نوع دیتابیس ها، معمولا یک یا دو جدول بزرگ وجود دارد بر خلاف OLTO که در آن چندین جدول با یکدیگر در ارتباط هستند.

 

با توجه به تعاریف مشخص است که ما از نوع اول (OLTP) در این دوره آموزشی استفاده می ک



:: بازدید از این مطلب : 237
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0
تاریخ انتشار : دو شنبه 22 اسفند 1390 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش Web Design


آموزش طراحي وب در سطوح مقدماتي تا پيشرفته بهمراه برگزاري

كارگاه عملي مربوطه
در آموزشگاه تحليل داده (با مجوز رسمي از وزارت

كار) با بيش از 10 سال سابقه درخشان
آموزشي و برگزاري دوره هاي تخصصي برنامه نويسي .

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

كلاسهاي حضوري با شماره هاي
88146330  و  88146323  و  09123840871  تماس حاصل فرماييد .

از سايت رسمي آموزشگاه  www.tahlildadeh.com  ديدن فرماييد .

 آموزش طراحی وب سایت

 


:: برچسب‌ها: آموزش طراحی وب سایت , آموزش طراحی سایت , دوره آموزشی طراحی سایت , آموزش WEB DESIGN ,
:: بازدید از این مطلب : 286
|
امتیاز مطلب : 20
|
تعداد امتیازدهندگان : 4
|
مجموع امتیاز : 4
تاریخ انتشار : یک شنبه 30 بهمن 1390 | نظرات ()
نوشته شده توسط : افشین رفوآ
برنامه نویسی سوکت PDF چاپ نامه الکترونیک

 برنامه نویسی سوکت

 

یکی از مباحث مهمی که در برنامه نویسی شبکه وجود دارد، مبحث سوکت هاست. این که سوکت ها در واقع چی هستند، به چه دردی میخورند و در واقع نحوه استفادشون به چه صورتی هست ؟

 

مطلب امروز درباره مقاله بلندی یا در واقع کتاب کوچکی است که به سادگی شما رو با سوکت ها آشنا خواهد کرد.

 

این مقاله مفید با حجم کم ۲۶ صفحه ای برای آشنایی مقدماتی با نحوه کار سوکت ها مناسب است.

 

توضیح دیگه ای رو لازم نمی بینم، با استفاده از لینک زیر میتوانید کتاب را دانلود کنید :

 

دانلود مقاله برنامه نویسی سوکت یا Socket Programming



:: برچسب‌ها: socket programming with C# and , Net Framework ,
:: بازدید از این مطلب : 222
|
امتیاز مطلب : 10
|
تعداد امتیازدهندگان : 2
|
مجموع امتیاز : 2
تاریخ انتشار : چهار شنبه 12 بهمن 1390 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزش UML

 

در این دوره زبان یکپارچه مدل‌سازی UML به عنوان ابزاری برای تعاملات کم ابهام با سایر اعضای تیم و توصیف نرم‌افزار از دیدگاه های ایستا، پویا، عملکردی و نمودار‌های متناسب با هر دیدگاه و نحوه تولید آن‌ها در ابزارهای متناسب آموزش داده و با معرفی گسترش‌پذیری زبان نحوه تطابق با امکانات شی‌گرایی جدید زبان های برنامه نویسی نظیر Extension Method ها و ... معرفی می‌گردد و استفاده از ابزار کمکی Rational Rose آموزش داده می‌شود.

 

جهت اطلاعات بیشتر به سایت http://www.tahlildadeh.com  مراجعه نموده و یا با شماره تلفنهای 88146330 و 88146323 تماس حاصل فرمایید.

 

 

 

 

 

اهداف دوره : 

1-     در این دوره ، دانشجو علاوه بر دیاگرام های UMLبا مفاهیم تحلیل و طراحی شیء گرا نیز آشنا     می شود.

2-     دانشجویان می توانند نمودارهای UML   مربوط به تیم نرم افزاری خود را خوانده و درک کنند .

3-     تحلیل گران می توانند تحلیل ، طراحی و پیاده سازی نمودارهای مدل سازی محیط نرم افزاری را انجام دهند .

4-     مهندسین صنایع خواهند توانست درک کاملی از نحوه طراحی شیء گرای محیط های عملیاتی کسب نمایند .

5-   دانشجویان می توانند مراحل توليد و ساخت را با كمك مشخصات پيشرفته Class ،State Machine و Component  انجام دهد.

6-     مرحله انتقال را با كمك Deployment Diagram تكميل نمايند.

 

مخاطبین دوره

  • برنامه‌نویسان، طراحان، تحلیلگران، معماران، تست‌کنندگان، مهندسین فرایند و به طورکلی کلیه اعضای فنّی تیم تولید نرم‌افزار که نیاز به تعامل حضوری یا غیرحضوری ایده‌های عناصر و فراورده‌های نرم‌افزاری یا مسائل تولید از دیدگاه خود با سایر تخصص‌های تیم دارند.
  • · همچنین مهندسین و مدیرانی که کار آن‌ها بر فرایندهای سازمانی با اهداف مختلف نظیر بهبود سازمانی، یا تحقق استانداردهای ISO 9001 و ... تمرکز دارد و نیاز به مدل‌سازی فرایندهای سازمانی دارند.
  •  

پیش‌نیاز

آشنایی با مفاهیم شی‌گرایی ویا یک زبان برنامه نویسی شی گرا

مدت دوره

30 ساعت

 

ردیف

نام مدل

معادل فارسی

کاربرد

1

Use case Diagram

دیاگرام موارد کاربرد

تحلیل

2

Activity Diagram

دیاگرام فعالیت

تحلیل

3

Class diagram

دیاگرام کلاس

تحلیل – طراحی

4

State Chart Diagram

دیاگرام حالت

تحلیل

5

Sequence Diagram

دیاگرام توالی

طراحی

6

Interaction OverView Diagram

دیاگرام همکاری

طراحی

7

Component Diagram

دیاگرام اجزاء

معماری

8

Deployment Diagram

دیاگرام توزیع

معماری

9

Object Diagram

دیاگرام اشیاء

طراحی

10

Composite Structure Diagram

دیاگرام ساختار ترکیبی

طراحی

11

Package Diagram

دیاگرام بسته بندی

تحلیل – طراحی

12

Timing Diagram

دیاگرام زمانی

طراحی

13

Communication Diagram

دیاگرام ارتباطات

طراحی

       

 

اهداف دوره: 

در این دوره ، دانشجو علاوه بر دیاگرام های UMLبا مفاهیم تحلیل و طراحی شیء گرا نیز آشنا می شود.برای ایجاد دیاگرام های UML، شرط لازم تسلط بر تحلیل و طراحی شی گراء می باشد.اصولا دانشجویان این دوره به دو دسته تقسیم می شوند. UML Readerها و UML Writerها

دسته اول کسانی هستند که می توانند دیاگرام های UMLرا بخوانند واطلاعات لازم برای کارهایی مانند برنامه نویسی و غیره را از آن استخراج کنند. و دسته دوم کسانی هستند که می توانند دیاگرام های UMLرا ایجاد کنند.

 

محتوای دوره: 

 

مقدمه ای بر UML:

1)      اهمیت مدل سازی

2)      دلائل مدل سازی

3)      معرفی UML

4)      منشاء UML

5)       UMLچیست؟

6)      چرا از UMLاستفاده می شود؟

7)        UMLبه عنوان یک زبان

8)      اسامی عناصر UML

9)      قابلیت توسعه UML

10)  کاربرد UML  در فیلد های نرم افزار هایی مختلف

11)  فرقUMLو RUP

12)  ارتباط UMLبا تحلیل و طراحی نرم افزار

13)  معرفی  دیاگرام های  UML

14)  دیاگرام های دینامیک و استاتیک

15)  دیاگرام های تحلیل ، طراحی و معماری

 

 

دیاگرام فعالیت (Activity Diagram) :

1)     ساخت یک دیاگرام فعالیت

2)     کاربرد دیاگرام فعالیت

3)     نحوه تشخیص فعالیت ها

4)     مدل سازی فعالیت های موازی

5)     خطوط شنا (SwimLane)

6)     نمایش انشعاب شرطی (Branch Condition) در یک دیاگرام فعالیت

7)     کاربرد های مختلف دیاگرام فعالیت

8)     مدل سازی فرایند های سازمان

9)     مدل سازی موارد کاربرد پیچیده

10)مدل سازی متد های پیچیده

11)استفاده از Note  در دیاگرام فعالیت

 

دیاگرام موارد کاربرد (Use Case Diagram) :

1)     تعریف اکتور

2)     نحوه پیدا كردن اکتور ها

3)     انواع اکتور

4)     نامگذاری اکتورها

5)     رابطه اکتور با Use Case  ها

6)     نحوه پیدا كردن Use Case  ها

7)     چگونه یك Use Caseتوصیف می شود

8)     نامگذاری یك Use Case

9)     توصیف اجمالی (Brief Description)

10)پیش شرط ها (PreConditions)

11)پس شرط ها (Postconditions)

12)روند اصلی (Basic Flow of Events)

13)روند های فرعی (Alt flow of events)

14)نیازمندیهای غیر عملیاتی (Supplementary Behavior)

15)روابط بین Use Caseها

16)رابطه Include

17)رابطه Extend

18)استفاده از State Diagramجهت تشریح Use Case

19)استفاده از Activity Diagramجهت تشریح Use Case

 

نمودار کلاس (Class Diagram) :

1)     تعریف کلاس

2)     نماد کلاس در UML

3)     نامگذاری کلاس ها

4)     ویژگی های کلاس

5)     متد های کلاس

6)     روابط بین کلاسها

16)  رابطه وراثت (Generalization)

17)  1-7) کلاس پایه

18)  2-7)کلاس های فرزند

19)  3-7)ارث بری چند گانه

20)  4-7) کلاسهای مجرد

21)  5-7) متد های مجرد

22)  6-7) چندریختی

7)     رابطه  انجمنی ( Association)

1-8)انجمنی یکطرفه و دو طرفه

2-8) نقش هر کلاس در رابطه انجمنی

3-8) هر کلاس در رابطه انجمنی (Multiplicity)

4-8) تبدیل روابط انجمنی n-nبه روابط 1-n

8)     رابطه Aggregation

9)     رابطه Composition

10)تفاوت رابطه Aggregationبا رابطه Composition

11)     Association Class

12)رابطه وابستگی (Dependency)

13)سطوح دسترسی به ویژگی ها و متد های یک کلاس

14)متد ها و ویژگی های استاتیک

15)چگونگی تشخیص و استخراج کلاسها

16)روش های حرفه ای تر در طراحی کلاسها

17)انواع کلاس ها در یک برنامه نرم افزاری

 

نمودار وضعیت (State Chart Diagram)  :

1)     ایجاد یک نمودار تغییر وضعیت        

2)     نمودار وضعیت به عنوان یک دیاگرام تحلیل و طراحی

3)     تشخیص وضعیت ها

4)     نام گذاری وضعیت ها

5)     جزئیات یک وضعیت

6)     1-5) فعالیت (Activity)

7)     2-5) یک عمل ورودی (Entry Action)

8)     3-5)فعالیت خروجی (Exit Action)

9)     4-5)فرستادن Eventبه آبجکت دیگر

10)5-5)تاریخچه حالت (State History)

11)گذر ها (Transition)

12)جزئیات یک گذر

13)1-7) رخداد (Event)

14)2-7)حالت شرط (Guard Condition)

15)3-7) فعالیت (Action)

 

نمودارهای توالی(Sequence Diagram)  و همکاری (Collaboration) :

16)ساخت یک نمودار ارتباط

17)یافتن آبجکت ها

18)افزودن Msg  به یک دیاگرام توالی

19)انواع Msgها در یک دیاگرام

20)نگاشت یک Msgبه یک عملیات

21)استفاده از دیاگرام توالی برای نشان دادن معماری نرم افزار و لایه بندی آن

22)خط عمر یک آبجکت

23)چگونگی نمایش Loopها در یک دیاگرام توالی

24)چگونگی نمایش شرط ها (if) در یک دیگرام توالی

 

نمودار اجزاء (Component Diagram) :

25)نمودار اجزاء به عنوان یک نمودار معماری

26)چگونگی تشخیص اجزاء

27)اجزاء (Component)

28)نام گذاری اجزاء

29)اجزاء و کلاس ها

30)تفاوت بین اجزاء و کلاس ها

31)تشابه بین اجزاء و کلاس ها

32)اینترفیس

33)ارتباط بین اجزاء و اینتر فیس ها

34)انواع اجزاء استاندارد

35)مدل سازی فایل های قابل اجراء و کتابخانه کلاس ها

36)مدل سازی جداول ، فایل ها و اسناد

37)مدل سازی کد ها

38)مدل سازی یک پایگاه داده فیزیکی

 

نمودار استقرار (Deployment Diagram) :

39)ایجاد دیاگرام استقرار

40)معرفی نود ها

41)چگونگی تشخیص نود ها

42)نامگذاری نود ها

43)ابعاد فیزیکی و منطقی

44)نود ها و اجزاء(Component)

45)سازمان دهی نود ها

46)ارتباطات

47)مدل سازی پروسه ها و Deviceها

48)مدل سازی توزیع شدگی اجزاء



:: بازدید از این مطلب : 432
|
امتیاز مطلب : 15
|
تعداد امتیازدهندگان : 3
|
مجموع امتیاز : 3
تاریخ انتشار : دو شنبه 3 بهمن 1390 | نظرات ()
نوشته شده توسط : افشین رفوآ


:: برچسب‌ها: آموزش VB , آموزشVB , NET , دوره آموزشی VB , NET , آموزش C# , آموزش سی شارپ , آموزش CSharp , آموزش C Sharp , ,
:: بازدید از این مطلب : 137
|
امتیاز مطلب : 15
|
تعداد امتیازدهندگان : 3
|
مجموع امتیاز : 3
تاریخ انتشار : دو شنبه 26 دی 1386 | نظرات ()
نوشته شده توسط : افشین رفوآ

آموزشگاه تحلیل  داده از سال 1380 تاکنون به عنوان یک آموزشگاه تخصصی در حوزه آموزش برنامه نویسی، بانکهای اطلاعاتی، نرم افزار و شبکه فعال است. خط مشی روشن آموزشگاه در ارایه آموزشهای اصولی، کاربردی، تخصصی و متناسب با نیاز روز و همچنین بهره مندی از اساتید با دانش و خبره باعث شده است این موسسه در زمره موسسات آموزشی حرفه ای ایران قرار گیرد.
 


:: برچسب‌ها: آموزشگاه برنامه نویسی در تهران , آموزش برنامه نویسی , آموزشگاه برنامه نویسی , آموزش برنامه نويس , آموزش سي شارپ , آموزش ASP , NET , آموزش ++C , آموزش طراحی سایت , آموزش SQL Server , آموزش C# , آموزش برنامه نویسی جاوا , آموزش برنامه نویسی آندروید , آموزش PHP , آموزش جوملا , آموزش RUP ,
:: بازدید از این مطلب : 1440
|
امتیاز مطلب : 5
|
تعداد امتیازدهندگان : 1
|
مجموع امتیاز : 1
تاریخ انتشار : یک شنبه 25 دی 1398 | نظرات ()

صفحه قبل 1 2 3 4 صفحه بعد