الاثنين، 30 أبريل 2012

تعلم لغة البرمجة Go بالعربي ( الدرس السابع )

بسم الله الرحمن الرحيم

في هذا الدرس " أن شاء الله " سوف تتعلم أستخدام جملة القرار switch بالأمثلة , تستخدم جملة switch في تحديد الأوامر المراد تنفيذها في عدة حالات أو مقارنات لقيمة متغير أو نتائج دالة , و سأستخدم في المثال هذا النص البرمجي من موقع go tour :

package main

import (

    "fmt"

    "runtime"
)

func main() {

    fmt.Print("Go runs on ")

    switch os := runtime.GOOS; os {

    case "darwin":

        fmt.Println("OS X.")

    case "linux":

        fmt.Println("Linux.")

    default:

        // freebsd, openbsd,

        // plan9, windows...

        fmt.Printf("%s.", os)

    }

}

الثلاثاء، 24 أبريل 2012

iphone:تعطيل خدمة حفظ الموقع في الصور

بسم الله الرحمن الرحيم

السؤال :
  • هل من الممكن حقاً معرفة مكان ألتقاط الصورة , و أذا كان ذلك صحيحاً فكيف يتم ذلك و كيف يمكنني منع ذلك ؟
 الجواب :

  • تقوم الهواتف الذكية مثل iphone و الهواتف العاملة على نظام Android بحفظ الأحداثيات الخاصة بالموقع  التي تم فيها ألتقاط الصورة بواسطة خدمة GPS في ملف exif مدمج بالصورة

فتعطيل هذه الخدمة قم بدخول الأعدادات "Setting"-> تحديد المواقع "Location Services" .


قم بتعطيل وصول تطبيق الكاميرا للخدمة تحديد المواقع , و أنصحك عطل جميع التطبيقات ما عدا تطبيق Maps , لتعطيل هذه الخدمة في هواتف Android قم بتشغيل الكاميرا و أدخل على الأعدادت المتقدمة "Advance setting" -> وضع علامة المواقع "Store Location" .
 

السبت، 21 أبريل 2012

لينكس : التحكم بالبرامج التي تعمل في الخلفية

بسم الله الرحمن الرحيم

يوفر نظام لينكس أمكانية التحكم بالعمليات التي يتم تشغليها بحيث يمكن تشغيل البرنامج في الواجهة أو ما يعرف بـ "foreground" , و في حالة رغبة المستخدم في عدم أشغال الجلسة الحالية لموجه الأوامر "terminal" تستطيع أرسال البرنامج للعمل في الخلفية "Background" .

  • أرسال برنامج للعمل في الخلفية "Background"

إزالة ^M من الملفات النصية في لينكس

بسم الله الرحمن الرحيم

تقوم أنظمة ويندوز بأضافة الحرف "^M" لنهاية الأسطر , و تكمن المشكلة في حالة نقل ملف تم كتابته في نظام ويندوز إلى نظام لينكس , حيث أن نظام لينكس لا يقرأ هذا الحرف بأعتباره جزء من النص مما يسبب الأخطاء في البرامج النصية مثل البايثون وبيرل .

و لمسح هذا الحرف تستطيع أستخدام المحرر النصي "sed " كالتالي :

sed -e '/^M/d' input > output


أستخدام الأداة curl لقياس سرعة الموقع

بسم الله الرحمن الرحيم

 يعد برنامج curl البديل المتطور  لبرنامج wget في لينكس , و في هذا السكريبت سأستخدم هذا البرنامج لقياس سرعة الموقع ( الوقت المستغرق لبدأ الأتصال , سرعة بدأ عملية النقل , الوقت الأجمالي ) , و إذا لم يكن برنامج curl قم بتفيذ هذا الأمر في موجه الأوامر لتثبيت :
sudo apt-get install curl

و هذا هو النص البرمجي لشيل سكريبت :

#!/bin/bash

if [ $# -ne 1 ];then

echo $0 "<site>"

exit

fi

site=$1

curl -A "Mozilla" -s -o /dev/null -w "Connect: %{time_connect} Start_Tranf:%{time_starttransfer} Total time: %{time_total}\n\n" $site

فقط قم بحفظ النص في نظام لينكس و حوله لملف تنفيذي بواسطة الأمر chmod :

chmod +x speed.sh


الأربعاء، 18 أبريل 2012

لينكس:تحويل فيديويات اليوتيوب إلى mp3

بسم الله الرحمن الرحيم

لتحويل فيديويات اليوتيوب إلى ملفات صوتية بصيغة mp3 تستطيع أستخدام الأداة ffmpeg و لتثبيت هذه الأداة أستخدام الأمر التالي في موجه الأوامر في لينكس :
sudo apt-get install ffmpeg

sudo apt-get install libmp3lame0

بعد ثبيت البرنامج نفذ هذا الأمر لتحويل الملف :

ffmpeg -i video1.flv -acodec libmp3lame -ac 2 -ab 128 -vn -y sound.mp3

قم بتغير أسم الملف video1.flv لأسم ملف الفيديو الذي تريد تغيره و الملف sound.mp3 لأسم الملف الذي تريد حفظ البيانات فيه

برنامج ext2explore لعرض ملفات لينكس في ويندوز

بسم الله الرحمن الرحيم

للمستخدمين الذين يستخدمون نظامي ويندوز و لينكس على نفس الحاسب , أقدم لكم هذا البرنامج الذي سيسمح لكم بعرض الملفات الموجودة على نظام ملفات لينكس (ext4,ext3).
البرنامج يعمل على نظام ويندوز xp و vista و أيضا 7 , البرنامج بسيط الاستخدام فقط قم بتنزيل الملف و تشغيل البرنامج ,  رابط التنزيل (http://sourceforge.net/projects/ext2read/http://sourceforge.net/projects/ext2read/) .

البرنامج يبحث عن أنظمة لينكس و يعرضها , و البرنامج بسيط جداً و المشكلة الوحيدة فيه هو عشوائية عرض الملفات و المجلدات .

الاثنين، 16 أبريل 2012

تغيير طريقة عرض الأرشيف في مدونة بلوجر

بسم الله الرحمن الرحيم

لتغيير طريقة عرض المواضيع الموجودة في الأرشيف لكي يتم عرض عناوين المواضيع فقط أستخدم الخطوات التالية :

1 . من قائمة المدونة أختر قالب :

2 . من صفحة "القالب" أختر "تحرير HTML" :

الأربعاء، 4 أبريل 2012

فايروفكس تمنع تشغيل الأصدارات القديمة من جافا

بسم الله الرحمن الرحيم


نظراً لأكتشاف ثغرات أمنية في جافا وصفت بالخطيرة و بالتحديد في  الأصدارات الأقدم من 31_1.6.0 و الإصدارت بين 1.7.0 و 2_1.7.0 فقد قام المبرمجون المسؤولون عن المصتفح فايروفكس بمنع تشغيل الأضافات الخاصة بهذه الأصدارة على المتصفح .

لذا تأكد من إصدارة الجافا في نظامك و نزل أحدث أصدارة .

المصدر :


google chrome : أيقاف تشغيل الفلاش

بسم الله الرحمن الرحيم

لإيقاف تشغيل الفلاش في متصفح قوقل كروم أتبع هذه الخطوات :

  • قم بتشغيل متصفح قوقل كروم و أكتب "about:plugins"  في المساحة المخصصة للعناوين

الثلاثاء، 3 أبريل 2012

لينكس : أستخدام اﻷمر tail لعرض التغيرات في الملفات

بسم الله الرحمن الرحيم

يستخدم الأمر tail في نظام لينكس لعرض السطور الأخيرة في الملفات النصية , و يكمن قوة هذا الأمر في أمكانية عرض التغيرات في الوقت الفعلية على الملفات و خصوصاً ملفات السجلات "log file" بأستخدام هذا الأمر كالتالي :
tail -f /var/log/syslog

سيتم عرض البيانات التي يتم أضافتها من قبل النظام في الوقت الحقيقي مما يسهل على مدير النظام من قراءة السجلات , و لن يتم إيقاف الملف إلا أن يتم ضغط الزرين CTRL+C .

لينكس : الأمر script لتسجيل ما يتم طباعته في موجه الاوامر

بسم الله الرحمن الرحيم

يستخدم الأمر script في نظام لينكس لتسجيل ما يتم طباعته في موجه الاوامر و مخرجات هذه الأوامر و يتم أستعماله كالتالي:
abgoor@abgoor-Extensa-4630Z:~$ script

Script started, file is typescript

قم بطباعة بعض الأوامر على سبيل التجربة ثم أكتب الأمر exit في موجه الأوامر كالتالي , سيتم عرض رسالة توضح أنتهاء تنفيذ برنامج script و حفظ البيانات في الملف typescript :

abgoor@abgoor-Extensa-4630Z:~$ exit

exit

Script done, file is typescript



لمعاينة بيانات الملف قم بأستخدام الأمر cat  كالتالي :

cat typescript

لتنفيذ الأمر في بداية موجه الأوامر أضف الأمر لملف bash_profile. في المجلد الرئيسي (Home folder) بواسطة محرر النصوص (gedit) و اضف السطور التالية :

#!/bin/bash

script -a -q .hidden_file

exit

المعامل a- في الأمر script يحدد أسم الملف الذي سيتم حفظ البيانات فيه إلى hidden_file. , أما المعامل q- فيعطل الرسائل الخاصة بالبرنامج التي تبنه المستخدم لعمل البرنامج .






الاثنين، 2 أبريل 2012

ubuntu : تثبيت مترجم لغة prolog و كيفية إنشاء البرامج

بسم الله الرحمن الرحيم

لتثبيت مترجم لغة prolog المجاني الخاص بمشروع جنوم في نظام ubuntu قم بتنفيذ الأمر التالي من موجه الأوامر:
apt-get install gprolog

و لإنشاء برامج البرولوغ يجب إنشاء ملف القواعد و سوف ننشأ هذا الملف كمثال بواسطة أي محرر نصوص ( gedit ) :
father(mohmmed).

son(salem).

قم بحفظ الملف بأسم program1.pro ثم قم بتحويله لملف تنفيذي بواسطة الإمر gplc :

gplc program1.pro

و قم بتنفيذ الملف الناتج و الذي سيكون أسمه program1 :

./program1

سيظهر لك موجه الأوامر الخاص باللغة البرولوغ و تستطيع تنفيذ القواعد المعرفة في الملف كالتالي :

GNU Prolog 1.3.0

By Daniel Diaz

Copyright (C) 1999-2007 Daniel Diaz

| ?- son(salem).

yes

| ?- father(salem).

no

| ?-


لإيقاف موجه أوامر لغة البرولوغ قم بضغظ CTRL+C ثم أطبع الحرف e و إضغط  Enter .

لغة Go متوافرة لمستخدمي ويندوز .

بسم الله الرحمن الرحيم

قامت شركة google بتوفير نسخة من لغة برمجتها لمستخدمي نظام ويندوز على هذا الرابط , قم بأختيار الملف المناسب لنوع حاسبك (64 بت أو 32 بت ) , ثم أتبع خطوات التنزيل .

تعلم لغة البرمجة Go بالعربي ( الدرس السادس )

بسم الله الرحمن الرحيم
جمل أتخاذ القرار if:

تستخدم جمل اتخاذ القرار لتحكم في سير تنفيذ البرنامج بناء على البيانات و المقارنات كهذا المثال في لغة Go:

package main

import "fmt"

func main(){

x := 12

if x < 20 {

fmt.Println("x<20")

}

    }

الطريق المستخدم في مثالنا الأول مشابه للغة السي و الجافا و المختلف في لغة Go أنه تم ألغاء استخدام القوسين () و لم يمكن أستخدمها حتى اختيارياً , أما القوسين { } المستخدمين لتحديد الكود المراد تنفيذه عن مطابقة الشرط فأصبحت أجبارية .

google adsense : منع الإعلانات المسيئة

بسم الله الرحمن الرحيم

يوفر برنامج قوقل الأعلاني الامكانية لتحكم في نوعية الإعلانات المعروضة على صفحتك, مما يمكنك من حجب بعض الإعلانات المسيئة .


  • أولا قم بالتسجيل في حسابك بواسطة هذا الرابط .
  •  من القائمة الرئيسية في الموقع أختر "السماح بالإعلانات / منعها" بالإنجليزي "Allow & Block ads"
 

الأحد، 1 أبريل 2012

الأمر getopts للتعامل مع معاملات الباش سكريبت

بسم الله الرحمن الرحيم

يستخدم الأمر getopts لتعامل مع المعاملات الخاصة بالسكريبت بشكل أحترافي , و لهذا المقال لنقترض سنعتمد على هذا السكريبت لشرح هذا الأمر :
#!/bin/bash

while getopts "f:n:h" OPTION

do
case $OPTION in

f)File=$OPTARG

cat $File;;

n)num=$OPTARG

echo $num;;

h)echo "Help";;

?) echo "test Program"

exit ;;

esac
 
done

  
سنبدأ بشرح السطر الثاني الذي يحتوي على الأمر getopts :

while getopts "f:n:h" OPTION

ستقوم الحلقة التكرارية while بالعمل حتي يتم يتنهي عمل الأمر getopts في الحصول على المعاملات المعرفة في ما بين علامتي التنصيص .

"f:n:h"

المعاملات في مثالنا هي f- , -n , -h  و ترمز النقطتين بعد المعامل  لوجود بيانات تابعه للمعامل كهذا المثال للمعامل f :

-f filename

في حالة عدم وجود أي بيانات تابعة للمعاملات سيتم كتابة المعاملات بدون أي مسافة كالتالي :

while getopts "fnh" OPTION

يلي هذا السطر الجملة القرار case التي سوف تنفذ على المتغير OPTION الخاص بحفظ القيمة التي يستعديها الأمر getopts .

case $OPTION in

f)File=$OPTARG

cat $File;;

n)num=$OPTARG

echo $num;;

h)echo "Help";;

?) echo "test Program"

exit ;;

esac
  
يستخدم المتغير الخاص OPTARG لحفظ البيانات التابعة لمعامل في المعامل f لنفترض أن المستخدم قام بكتابة الأمر كالتالي :

-f filename

سيكون قيمة المتغير OPTARG مساوية لقيمة filename , هذا هو شرح بسيط لهذه الأداة التي تزيد من فعالية البرامج .