آخرین اخبار و مقالات

نسخه جدید Gmail به زودی منتشر می شود

نسخه جدید Gmail به زودی منتشر می شود

۱۳ اردیبهشت ۱۳۹۷ / تکنولوژی

ما را در شبکه های اجتماعی دنبال کنید.

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

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

گروه خبری شرکت نرم افزاری فرداد / مقاله

برنامه نویسی چیست؟

 

برنامه نویسی کامپیوتر که با نام کدنویسی هم شناخته میشود فرآیند ایجاد نرم افزار است. اما دقیقا نرم افزار چیست و چگونه ساخته میشود؟

 

نرم افزار چیست؟

 

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

مراحل زیر کمی شبیه دستورالعمل پخت و پز است:

  • یک تخم مرغ را درون یک کاسه بشکنید.
  • تخم مرغ را هم بزنید.
  • تابه را روی حرارت متوسط قرار دهید.
  • روغن را بریزید.
  • تخم مرغ را درون تابه بریزید.
  • و…

 

به جای کار کردن با مواد ، کامپیوترها با داده ها کار می کنند.فرآیند های درون نرم افزارها بیشتر شبیه زیر هستند:

  • لود کردن برخی از داده ها
  • لود کردن داده های دیگر
  • داده های بالا رو به داده های نتیجه تبدیل کنید.
  • داده های نتیجه را برای نمایش به یک مانیتور ارسال کنید.
  • داده های نتیجه را از طریق اینترنت ارسال کنید.
  • و…

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

کد منبع شبیه چه چیزی است؟

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

 

 

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

require ‘open-uri’

require ‘json’

FRONT_PAGE_URL = ‘https://reddit.com/r/all.json’

front_page = JSON.load(open(FRONT_PAGE_URL).read)

top_post = front_page[‘data’][‘children’][0][‘data’]

puts ‘The top post on reddit is:’

puts top_post[‘title’]

puts top_post[‘url’]

 

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

The top post on reddit is

One of my favourite things about working in the ski fields

http://fardadweb.ir/content/uploads/2017/11/browserslide23.jpg

اینجا دقیقا همان برنامه را با زبانی دیگر که با نام پایتون شناخته میشود نوشته ایم:

import urllib, json

FRONT_PAGE_URL = “https://reddit.com/r/all.json”

front_page = json.loads(urllib.urlopen(FRONT_PAGE_URL).read())

top_post = front_page[‘data’][‘children’][0][‘data’]

print “The top post on reddit is:”

print top_post[‘title’]

print top_post[‘url’]

 

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

(require ‘[clojure.data.json :as json])

(def front-page-url “https://reddit.com/r/all.json”)

(let [top-post (-> front-page-url

(slurp)

(json/read-str)

(get-in [“data” “children” 0 “data”]))]

(println “The top post on reddit is:”)

(println (get top-post “title”))

(println (get top-post “url”)))

 

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

ارتباط با یک انسان بسیار عالی است ، اما کامپیوترها هیچ یک از این زبان ها را نمی فهمند. کامپیوترها همه چیز را عینا می فهمند یعنی (ما باید با کامپیوتر صریح و بدون ابهام صحبت کنیم.). اگر شما از یک کامپیوتر بپرسید چه عددی زوج و چه عددی فرد است ؟ او همیشه با “بله” جواب می دهد.

(این موضوع شوخی نیست! .)

اینجا یک کد از زبان رابی داریم:

puts (5.odd? or 5.even?)

 

این کد کلمه “صحیح” را نمایش میدهد. که از لحاظ فنی درست است. عدد ۵ هم زوج و هم فرد است.

 

فراتر از کد نوشتن :

 

کدنویسی فقط یک قسمت از ساخت نرم افزار است.

بسیاری از نرم افزارهای بزرگ مانند: Windows, OS X و بازی های سنگین از بیش میلیون ها خط کد تشکیل شده اند. هنگامیکه کد زیادی دارید ، شما باید برنامه ریزی کنید که کدها چگونه نوشته شوند. و بخش های مختلف کدها چگونه با هم کار خواهند کرد.

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

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

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

 

نتیجه :

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