بایگانی دستهها: توسعه نرم افزار
اولین برنامه من برای سیستم عامل Android؛ یادآوری روزهای تولد
بعد از سر و کله زدن با دنیای Android و کشیدن ناز شبیه سازش، بالاخره اولین برنامه ام آماده شد.
این یه برنامه ساده است که بر اساس Contact های موجود توی گوشی، می تونید تاریخ تولدشون رو ذخیره کنید (به میلادی!) و بعد تو فهرست اصلی برنامه، 10 تا تولد جدید رو ببینید. البته هنوز جای کار داره و با مشورت دوستای عزیزم که کمکم کردن سعی می کنم بهترش کنم. این برنامه برای نسخه های 2.1 سیستم عامل android بعد از اون قابل استفاده است. و اینم بگم هزار تا مدل از همین تیپ نرم افزارها رو میشه پیدا کرد. به هرحال ما هم شانس خودمون رو امتحان کردیم.
جا داره از محمد علی صاحب جمعی یه تشکر ویژه بکنم که گوشی اش رو دو روز به من قرض داد تا مشکل اساسی برنامه رو بتونم با تست کردن رو گوشی برطرف کنم. به شبیه ساز که خود SDK میده نمیشه زیاد اعتماد کرد. از من به شما نصیحت.
برای دانلود کردن برنامه اینجا کلیک کنید.
تصاویر برنامه:
چطور در مورد نیازهای نرم افزار مدنظرتان با یک Developer ارتباط برقرار کنید

به نظر واضح میرسد ولی ارتباط موثر با توسعه دهندگان نرم افزار بخش مهمی از پروژه محسوب میشود. تفاوت اساسی بین پروژه ای که به بیشتر اهدافش میرسد با پروژه ای که نمی رسد وجود دارد .
توانایی بحث کردن در مورد ایده ای که در ذهن دارید همشه برای یک ارتباط موثر برای رسیدن به جزئیات نیازها و تفاوتهای بحرانی کافی نیست . من سفارش می کنم نیازهای مشتری را مستند سازی کنید تا گرفتن تائیدیه از سهامداران آسانتر شود و بتوانید به نوبت با افراد تیم توسعه دهنده ارتباط برقرار کنید .
همچنین ببینید : HOW TO : Hire a Designer or Developer
در اینجا چند تکنیک و تمرین برای کمک به مستند سازی سند چشم انداز ( vision ) نرم افزار ارائه میشود . شاید شما جزئیات یا عوامل بالقوه ای را کشف کنید که تا بحال راجع به آنها فکر نکرده بودید .
خبر خوش این است که نمی توانید اینها را اشتباه انجام دهید . رمز موفقیت این است که زمانی را برای وارد شدن به اندیشه هایتان بگذارید و جزئیات حیاتی و سناریو های دقیقی را تعریف کنید . صرف کردن زمان در این فاز میتواند میزان زیادی از زمان توصعه را کاهش دهد که میتوان آنرا به کاهش درد سرها و کاهش هزینه ی تمام شده تعبیر کرد.
بیایید شروع کنیم Read the rest of this entry
Volunia ،گوگل را به مبارزه دعوت می کند
Massimo Marchiori استاد ریاضیات دانشگاه پادوا ایتالیا با توسعه الگوریتم جستجو گوگل و بهینه کردن آن موتور جستجو خود را به نام volunia.com. را تا پایان سال جاری آماده سازی خواهد کرد که «گوگل» را به چالش خواهد کشاند.در فیلمی که در سایت مذکور نشان داده می شود Massimo Marchiori در حالی که با تخته وایت برد روی صندلی پارک نشسته است توضیح می دهد:»که گوگل در سرویس جدید خود موسوم به گوگل پلاس فقط 10 درصد ازدیدگاههای نوین رادیکالی که در زمینه جستجو بهینه در مرورگرهای آینده بکار میرود را عملی کرده است.»
این وب سایت به کاربران خود اجازه می دهد که در نسخه آزمایشی (بتا) با ثبت نام در این سایت سطح دسترسی «Power User» داشته باشند و موتور جستجو فوق را که به 12 زبان راه اندازی شده است را آزمایش کنند.(قابل توجه برنامه نویسان) او همچنین در مصاحبه ی که هفته گذشته با شبکه آنلاینCorriere della Sera انجام داده بود گفته است که Volunia رقیب اصلی گوگل خواهد شد.او در ادامه مصاحبه خود گفته است اگر چه گوگل شرکت بسیار عظیم در این مقوله است که 100 ها مهندس در 24 ساعت شبانه روز در آنجا مشغول فعالیت هستند ؛اما با توجه به این اطلاعات من فکر می کنم با ارائه این موتور جستجو جدید بتوانیم با گوگل رقابت جدی داشته باشیم.
Marchiori عضو هیئت مدیره تیم برنرز لی کنسرسیوم شبکه جهانی وب (W3C) است وبر روی بستر های نرم افزاری مورد نیاز برای تنظیمات حریم خصوصی (P3P) و زبان Ontology وب (OWL) کار کرده است. الگوریتم جستجو او در یک کنفرانس در کالیفرنیا در سال 1996، که توسط لری پیج 23 ساله در آن شرکت شده بود ارائه شد. که بعدها به الگوریتم پیج رنک گوگل سیستم نام گذاری شد.گفتنی است که سرورها جدید این موتور جستجو توسط Sardinia وTiscali آماده سازی شده است.
او همچنین گفت ساخت این موتور جستجو با همکاری 20 دانشجو وی و با کمک مالی دولت و شرکت مخابراتی Pireddu انجام شده است.
برای خواندن اطلاعات تکمیلی به این پیوند مراجعه کنید.
سایتهای مبتنی ASP.Net هدف بعدی مهاجمان
بیش از 200 هزار وب سایت توسط برنامه ASP.Net پایه گذاری شده اند مورد حمله قرار گرفته اند گ؛ به این شیوه که با ارتباط با یک سروری نا مشخص کدهای مخرب را به رایانه ی شخص بازدید کننده فرستاده و با نصب آن رایانه شخص را آلوده می کند؛که این می تواند بزرگترین حمله در نوع خود باشد(ASP.Net -injection).
تا پیش از آن بیشتر حملاتی که به وب سایت های عمومی می شد از نوع حملات نفوذی SQL بود.که در آن مجرمان با استفاده از کد نویسی Java Script که آنرا شیوه ی مناسب برای توسعه انواع کدهای مخرب می دانند توانستند با شیوه های مختف به آلوده کردن وب سایتها دست بزنند.طبق تحقیق محققان Armorize که بتازگی منتشر شده است ؛مهاجمان توانسته اند باقرار دادن کد های جاوا – اسکریپت آلوده و مخرب سایتهای ساخته شده با ASP.Net را نیز آلوده کنند.دو نمونه از سایتهای که با این شیوه مورد حمله قرار گرفته اند؛ www2.safetosecurity.rr.nu و www3.strongdefenseiz.in که مهاجمان با کنترل کردن آنها از راه دور یا به اصطلاح «Remote» کردن توانسته اند بد افزارهای خود را به بازدیدکنندگان فراوان دو وب سایت گفته شده ارسال وضربه سنگینی به آنها بزنند.
اگر یکی از بهره برداری ها درست باشد؛ترتیب و دنباله این حملات برای نصب این بد افزارها از طریق کنترل از راه دور آنقدر ادامه می یابد که پایگاه اصلی کنترل از راه دور جهانی که در آمریکا واقع هست را نیز تحت آسیب جدی قرار می دهد.براساس تحقیقات Armorize تا کنون بیش از 180000 وبسایت با این شیوه مورد حمله قرار گرقته اند.
در ابتدای سال جاری حمله به نام های lizamoon حملاتی رو به وب سایت های مبتنی بر IIS مایکروسافت انجام داده بوداین حملات بیشتر ناشی از ضعف در پیکربندی سایت و لحاظ نکردن نکات امنیتی است.حملات رایج از این دست که اصطلاحا به آنها client-side attacks نیز گفته می شود .بوسیله نصب درایورهای مخرب و پلاگین های مرورگرها همچون فلش،QuickTime و….صورت می گیرد.
انتشار SDK برای Kinect
بابک فخریلو
مایکروسافت بالاخره SDK* رسمی ابزار Kinect را که برنامه نویسان مدت ها انتظارش را می کشیدند، عرضه کرد.
با وجود این که خود ابزار Kinect سال گذشته برای Xbox 360 عرضه شد، اما از همان زمان هکرهای کنجکاو سعی کرده اند تا به هرشکلی از این ابزار استفاده کنند. مایکروسافت ابتدا نسبت به کارهای هکرها در این مورد تردید داشت، اما بالاخره پذیرفت که واقعا ابتکارهای جالبی از سوی آنها سر زده است.
این SDK به هر کسی که از Visual Studio 2010 استفاده می کند و برنامه هایش را به زبان Visual Basic ، C# یا C++ می نویسد، امکان استفاده از ویژگی های اش را فراهم می سازد.
متاسفانه این انتشار صرفا روی Windows کار می کند، و برای استفاده از آن نیاز به Visual Studio و XNA framework دارید. البته این خلاف بسیاری از کتابخانه های open source است که اول از همه روی اجرا شدن بر بستر Linux اصرار دارند، و تنها برخی از آنها بعدا نسخه های Windows را هم اضافه می کنند.
مایکروسافت تاکید زیادی دارد که این نسخه صرفا یک نسخه ی آزمایشی (beta) و برای استفاده غیرتجاری است.
برای دریافت این SDK می توانید به سایت Microsoft Research مراجعه کنید. نمونه ها و شروع کار سریع هم در دسترس قرار گرفته اند.
SDK* : که سرنام Software Development Kit است، بسته ی برنامه نویسی است که یک برنامه نویس را قادر می سازد برای یک platform خاص، برنامه های مورد نظرش را توسعه دهد. نوعا یک SDK شامل یک یا چند API، ابزار های برنامه نویسی و مستندات مربوط به آن SDK است.
برگرفته از:
Official Kinect SDK finally available
NHibernate 2.x Beginner’s Guide
کار کردن با پایگاه داده با استفاده از فناوری هایی که مایکروسافت در Visual Studio و زبان های مرتبط با آن (به ویژه #C) معرفی کرده است، نسبت به گذشته بسیار آسان تر شده. فناوری مانند Linq و entity framework از جمله راه های سریع و آسان برای دسترسی به داده های ذخیره شده در Database هستند. این بار قصد معرفی ابزاری را داریم که متن باز بوده و با اتصال به Visual Studio کار اتصال و بازیابی داده ها از Database را برای شما آسان می کند. این ابزار در شاخه ابزار های ORM قرار دارد، که شما را از طراحی کردن لایه های داده (Data Access Layers) فارغ می سازند. در زیر بیشتر خواهید خواند.
NHibernate یک ORM (object-relational mapper ) متن باز، یا به طور ساده، راهی برای دسترسی به داده های ذخیره شده در پایگاه داده و مرتبط کردن آنها با اشیای .NET است. غالبا زمان زیادی برای طراحی مجدد پایگاه داده جهت بهبود دسترسی به داده و مکانیسم طی می شود. این کتاب با در اختیار قرار دادن همه ی اطلاعات لازم درباره ی بهره وری و بهنیه سازی NHibernate ، سبب می شود تا زمان کمتری را در پروژه ها صرف کنید.
اگر از نوشتن رویه های ذخیره شده(stored procedures ) یا بهره گیری از دستورات SQL خسته شده اید، حتما این کتاب را مطالعه کنید.
دسترسی به پایگاه داده و داده های آن تقریبا بخش بزرگی از هر پروژه است، چه وب سایت باشد چه برنامه ی رومیزی. با استفاده از تکنیک های معرفی شده در این کتاب خیلی راحت با پایگاه داده ی خود کار کنید.
SqLite ADO.NET و #C
بابک فخریلو
چند وقتی بود که با SQLite آشنا شده بودم. مدتی پیش هم کار کردنش رو با .NET تجربه کردم، و دوست داشتم این تجربه روبا دیگران به اشتراک بذارم، خوشبختانه مطلب آموزشی زیر رو تو سایتی دیدم و تصمیم گرفتم که برای شما ترجمه کنم.
SQLite که به زبان C نوشته شده، موتور پایگاه داده ای درون سازی شده، بی نیاز از سرور، مستقل از سکو(در هر سیستم عاملی قابل اجرا است)، بی نیاز از نصب و تراکنشی است. SQLite نسبتا کوچک است، و حجمی حدود 257 کیلوبایت و یک فایل پایگاه داده ی منفرد دارد.
استفاده از SQLite به جای MS.Access برای برنامه های متوسط و کوچک بهتر است، چرا که مستقل از سکوست و نیازی به نصب برنامه ی Microsoft Office در کامپیوتر کاربر ندارد. و از آنجایی که به هیچ تنظیمی نیاز ندارد، می توانید برنامه را به راحتی در هر جایی استفاده کنید. چقدر راحت. SQLite از تابع سفارشی و trigger هم پشتیبانی می کند. در Ms.Access برای نوشتن تابع سفارشی، باید از محیط VBA استفاده کنید، اما در SQLite، این تابع را به زبان خودتان می نویسید، تا بعدا به طور خودکار به پردازش SQLite مقید شود.
مزیت های SQLite:
1. بی نیاز از نصب
2. بی نیاز از سرور
3. فایل پایگاه داده ای منفرد(یعنی ففقط یک فایل برای پایگاه داده مورد استفاده قرار می گیرد)
4. مستقل از سکو
5. رکورد های با طول متغیر
6.سایز فشرده
7.رایگان
اشکلات SQLite:
- در بیشتر موارد اندازه ی پایگاه داده به 2 گیگابایت محدود است
- عدم پذیرش کامل SQL92
- بسته شدن کل فایل به هنگام نوشتن
- نبود مکانیسم caching
- مقیاس پذیری کم
در ادامه نحوه ی استفاده از SQLite را با زبان C# به شما نشان خواهم داد. برای دسترسی به SQLite در C#، نیاز به SQLite ADO.NET دارید که می توانید از اینجا یا اینجا دانلود کنید.(هموطنان داخل ایران از لینک دوم استفاده کنید) :
Visual Studio را باز کنید
یک پروژه Windows Application به زبان C# ایجاد کنید.
فایل های DLL را از sqlite ADO.NET (System.Data.SQLite.dll) وارد پروژه کنید.(Add refrence)
خاصیت “Copy Local” مربوط به System.Data.SQLite.dll را به true تغییر دهید، تا به هنگام کامپایل، کپی شود
سپس پوشه ی جدیدی ایجاد کرده، نام آن را Data بگذارید. این پوشه محل نگهداری فایل پایگاه داده خواهد بود
فایل پایگاه داده را اضافه کرده،و خاصیت ”Copy To Output Directory” به «Always» تغییر دهید
حالت Design فرم اول (form1) را انتخاب کرده، و یک DataGridView به آن اضافه کنید، ویژگی های آن را طوری تغییر دهید که شبیه شکل زیر شود
روی Form1 کلیک مضاعف کنید تا وارد محیط ویرایشگر کد و رویداد Form1_Load شوید
کد زیر را وارد کنید
private void Form1_Load(object sender, EventArgs e)
{
SQLiteConnection ObjConnection = new SQLiteConnection("Data Source=Data/data.db3;");
SQLiteCommand ObjCommand = new SQLiteCommand("SELECT * FROM PERSON", ObjConnection);
ObjCommand.CommandType = CommandType.Text;
SQLiteDataAdapter ObjDataAdapter = new SQLiteDataAdapter(ObjCommand);
DataSet dataSet = new DataSet();
ObjDataAdapter.Fill(dataSet, "Person");
dataGridView1.DataSource = dataSet.Tables["Person"];
}
فراموش نکنید که کد زیر را حتما به فرم اضافه کنید
using System.Data.SQLite;
با کامپایل کردن و اجرای فایل، شما به پایگاه داده SQLite متصل می شوید. می توانید عملیات درج، بروز رسانی و حذف یا هر نوع پرس و جوی(query) پیچیده را روی پایگاه داده انجام دهید.
برای دانلود کردن این پروژه و فایل پایگاه داده، اینجا کلیک کنید.
منبع:
http://www.ivankristianto.com/software-development/visual-studio-net/howto-use-sqlite-ado-net-with-c/943/












