Skip to content

Commit 50e9351

Browse files
committed
Imported the bg content.
1 parent 635b797 commit 50e9351

File tree

31 files changed

+2637
-0
lines changed

31 files changed

+2637
-0
lines changed

bg/about/index.md

Lines changed: 177 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,177 @@
1+
---
2+
layout: page
3+
title: "За Ruby"
4+
lang: bg
5+
---
6+
7+
Чудите се защо Ruby е толкова популярен и обичан език за програмиране?
8+
Рубистите го наричат красив и артистичен и въпреки това той е практичен
9+
и мощен. Но защо?
10+
11+
### Принципи и идеали на създателя на Ruby
12+
13+
![](http://redhanded.hobix.com/images/ruby-lang-matz.png){:
14+
style="padding-left:8px;"}
15+
{: style="float:right"}
16+
17+
Ruby e перфектно балансиран език за програмиране. Създателят му
18+
[Yukihiro „matz“ Matsumoto][1] е черпил вдъхновение от любимите си езици
19+
(Perl, Smalltalk, Eiffel, Ada, и Lisp) докато е писал творението си.
20+
21+
Той често казва, че се е опитал да създаде „естествен, а не лесен за
22+
писане език“.
23+
24+
### За растежа на Ruby
25+
26+
От първата си публична поява през 1995 година, Ruby привлече отдадени
27+
програмисти по целия свят. През 2006, Ruby достигна масов прием.
28+
29+
<div style="float:right">
30+
![Graph courtesy of
31+
Gmane.](http://gmane.org/plot-rate.php?group=gmane.comp.lang.ruby.general&amp;width=280&amp;height=140&amp;title=Ruby-Talk+Activity+over+4+Years
32+
"Graph courtesy of Gmane."){: style="padding-left:8px;"}
33+
</div>
34+
35+
Ruby-Talk – основният [пощенски списък](/en/community/mailing-lists/) за
36+
дискусии относно Ruby достигна 200 съобщения на ден.
37+
38+
Индексът в TIOBE, който измерва растежа на езиците за програмиране,
39+
постави Ruby на 9-то място в световен мащаб. Голям принос за този
40+
удивителен скок има Ruby On Rails, популярен framework за изграждането
41+
на интернет приложения.
42+
43+
Ruby е абсолютно [безплатен](./license.txt) за употреба, модификация и
44+
разпространение.
45+
46+
### Философията „всичко е обект“
47+
48+
Първоначално Matz преглежда другите езици в търсене на идеалния
49+
синтаксис. Той споделя: „Исках скриптов език за програмиране, по-мощен
50+
от Perl и далеч по-обектноориентиран от Python.“
51+
52+
В Ruby всичко е обект. Всеки бит от информация и код може да притежава
53+
свои атрибути и методи. Пример за това ни дава кодът, който следва
54+
(метод, извикан върху число).
55+
56+
5.times { print "We *love* Ruby -- it's outrageous!" }
57+
{: .code .ruby-code}
58+
59+
В много други езици числата и примитивните типове не са обекти. Ruby е
60+
повлиян от Smalltalk и дава възможност за извикването на методи на
61+
всичките си типове.
62+
63+
### Гъвкавост в Ruby
64+
65+
Ruby е считан за гъвкав език поради факта, че програмистите могат
66+
свободно да променят всяка една част от кодa. Основни части могат да
67+
бъдат премахвани или модифицирани. Силата на езика идва от опита за
68+
премахването на ограниченията, познати в другите езици.
69+
70+
Пример за това е добавянето на метода `plus`, който дублира оператора
71+
(`+`) директно във вградения клас `Numeric`.
72+
73+
class Numeric
74+
  def plus(x)
75+
    self.+(x)
76+
  end
77+
end
78+
79+
y = 5.plus 6
80+
# y е равно на 11
81+
{: .code .ruby-code}
82+
83+
Операторите в Ruby всъщност представляват синтактична „захар“ за
84+
методите. Те също могат да бъдат променени.
85+
86+
### Експресивност на блоковете
87+
88+
Блоковете в Ruby са друг пример за невероятната гъвкавост на езика.
89+
Всеки програмист може да „прикачи“ closure към метод, описващ начина, по
90+
който той ще се изпълнява. „Затварянето“ (closure) се нарича *блок* и се
91+
е превърнало в една от най-популярните функционалности за начинаещите,
92+
мигрирали от императивни езици като PHP или Visual Basic.
93+
94+
Появата на блоковете в Ruby е вдъхновена от езиците за функционално
95+
програмиране.
96+
97+
search_engines =
98+
  %w[Google Yahoo MSN].map do |engine|
99+
    "http://www." + engine.downcase + ".com"
100+
  end
101+
{: .code .ruby-code}
102+
103+
В горния отрязък код блокът е реализиран в `do ... end` конструкцията.
104+
Методът `map` се прилага за списъка от думи в блока. Много други методи
105+
предлагат използването на блокове за прилагането им към специфичен
106+
списък/код.
107+
108+
### Ruby и Mixin
109+
110+
За разлика от повечето обектно-ориентирани езици, Ruby не предлага
111+
множествено наследяване по стандартен начин. Тук то е реализирано с
112+
използването на модули (наричани Категории в Objective-C). Модулите са
113+
колекции от методи.
114+
115+
Класовете могат да включват модули, като така те получават достъп до
116+
техните методи. За пример може да се даде всеки клас, имплементиращ
117+
`each` метода, като това е условието за „наследяване“ на модула
118+
`Enumerable`, който добавя известен брой методи за работа с `each`.
119+
120+
class MyArray
121+
  include Enumerable
122+
end
123+
{: .code .ruby-code}
124+
125+
Като цяло рубистите смятат, че това е по-изчистен начин за реализиране на идеята за множествено наследяване, което по-принцип е сложно и ограничаващо в много от случаите. ### Визуално представяне на Ruby код
126+
127+
Ruby не се нуждае от декларация на променливи. За сметка на това
128+
притежава лесен начин за именоване нa различните променливи.
129+
130+
* `var` е локална променлива.
131+
* `@var` е променлива на инстанцията.
132+
* `$var` е глобална променлива.
133+
134+
Тези означения спомагат за четливост, като позволяват на програмиста да
135+
идентифицира лесно ролята на всяка променлива. По този начин се премахва
136+
употребата на `self.` като идентификатор на всеки член на инстанцията.
137+
138+
### Отвъд основните принципи
139+
140+
Ruby притежава множество други черти, като някои от тях са:
141+
142+
* Прихващане и обработка на exceptions, както в Java или Python, което
143+
улеснява манипулацията на грешки.
144+
* Притежава истински Garbage Collector за всички обекти, което премахва
145+
нуждата от ръчно заделяне и освобождаване на памет.
146+
* Писането на C разширения в Ruby е по-лесно от това на Perl или Python,
147+
с елегантно API за извикване на Ruby от C. Това спомага за вграждането
148+
на Ruby като скриптов език. Налична е поддръжка на SWIG интерфейс.
149+
* Позволява динамично зареждане на разширителни външни библиотеки в
150+
случай, че операционната система го позволява.
151+
* Позволява програмиране с нишки, независимо от операционната система.
152+
* Ruby е преносим език: създаден предимно на GNU/Linux, но работи под
153+
много UNIX-базирани операционни системи, Mac OS X, Windows
154+
95/98/Me/NT/2000/XP, DOS, BeOS, OS/2 и др.
155+
156+
#### Референции
157+
158+
<sup>1</sup> Matz в пощенския списък Ruby-Talk, [May 12th, 2000][2].
159+
{: #fn1}
160+
161+
<sup>2</sup> Посетете сайта на [Ruby on Rails][3] за повече информация.
162+
{: #fn2}
163+
164+
<sup>3</sup> Matz в [Интервю със създателя на Ruby][4], Nov. 29th, 2001.
165+
{: #fn3}
166+
167+
<sup>4</sup> Matz в [Blocks and Closures in Ruby][5], December 22nd,
168+
2003.
169+
{: #fn4}
170+
171+
172+
173+
[1]: http://www.rubyist.net/~matz/
174+
[2]: http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/2773
175+
[3]: http://rubyonrails.org/
176+
[4]: http://www.linuxdevcenter.com/pub/a/linux/2001/11/29/ruby.html
177+
[5]: http://www.artima.com/intv/closures2.html

bg/community/conferences/index.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
---
2+
layout: page
3+
title: "Ruby конференции"
4+
lang: bg
5+
---
6+
7+
Ruby програмистите по света все по-често организират конференции, където
8+
се събират за да споделят интересни идеи, информация, обсъждат бъдещето
9+
на езика и за да посрещнат „новаците“ в Ruby обществото.
10+
11+
### Основни Ruby конференции
12+
13+
[RubyConf][1]
14+
: От 2001 насам всяка година, [Ruby Central, Inc.][2] организира
15+
RubyConf. Посещаемостта се е увеличила десетократно между 2001 и 2006
16+
година. RubyConf предоставя сцена за презентации относно технологии,
17+
свързани с Ruby, директно от техните създатели като Nathaniel Talbot и
18+
Test Unit, Jim Weirich и Rake, David Heinemeier Hansson и Ruby on
19+
Rails, Why the Lucky Stiff и YAML библиотеката, Sasada Koichi и YARV.
20+
Matz, създателят на Ruby, е присъствал и участвал всяка година с
21+
изключение на една.
22+
23+
[RubyKaigi][3]
24+
: Първата японска конференция – RubyKaigi 2006 – се провежда в Odaiba.
25+
RubyKaigi предлага нови и вдъхновяващи презентации от Matz и други
26+
рубисти всяка година.
27+
28+
[EuRuKo <small>(Europaeische Ruby Konferenz)</small>][4]
29+
: Първата ежегодна европейска Ruby конференция се провежда в Карлсруе,
30+
Германия през 2003 година. Организирана от германски рубисти като
31+
Armin Roehrl и Michael Neumann, EuRuKo се превръща във втората
32+
ежегодна Ruby конференция, стартираща две години след RubyConf.
33+
34+
[Open Source Developer Conference][5]
35+
: Това е ежегодна конференция, свързаща програмистите на отворен код,
36+
която се провежда всяка година в Австралия.
37+
38+
### Регионални Ruby конференции
39+
40+
[Ruby Central][2] администрират [Regional Conference Grant Program][6],
41+
като поемат разходите за локални и регионални групи, желаещи да
42+
организират събирания.
43+
44+
Ruby Central също така работи с [SDForum][7] в усилията си за Silicon
45+
Valley Ruby Conference.
46+
47+
[RubyNation][8] е ежегодна Ruby конференция, която се провежда във
48+
Virginia, West Virginia, Maryland, и Washington, DC.
49+
50+
### Присъствие на Ruby в други конференции
51+
52+
Ruby присъства на [O’Reilly Open Source Conference][9] (OSCON) от 2004
53+
г. Някои от конференциите, свързани с Ruby on Rails, са: Ruby Central’s
54+
[RailsConf][10], [RailsConf Europe][11] (през 2006 г. с помощта на Ruby
55+
Central и [Skills Matter][12], и през 2007 г. с помощта на Ruby Central
56+
и O’Reilly), както и Canada on Rails и Scotland on Rails.
57+
58+
59+
60+
[1]: http://www.rubycentral.org/conference
61+
[2]: http://www.rubycentral.org
62+
[3]: http://jp.rubyist.net/RubyKaigi2008/
63+
[4]: http://www.approximity.com/cgi-bin/europeRuby/tiki.cgi?c=v&amp;p=Euruko07
64+
[5]: http://www.osdc.com.au/
65+
[6]: http://www.rubycentral.org/rcg2006.pdf
66+
[7]: http://www.sdforum.org
67+
[8]: http://rubynation.org/
68+
[9]: http://conferences.oreillynet.com/os2006/
69+
[10]: http://www.railsconf.org
70+
[11]: http://europe.railsconf.org
71+
[12]: http://www.skillsmatter.com

bg/community/index.md

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
---
2+
layout: page
3+
title: "Общество"
4+
lang: bg
5+
---
6+
7+
Обществото, което се образува около един език за програмиране е сила,
8+
която не може да бъде пренебрегвана. Ruby притежава ентусиазирано и
9+
постоянно увеличаващо се общество, което е приятелско настроено към хора
10+
на всякакво ниво на програмиране.
11+
12+
Ако сте заинтересовани от възможноста да се включите, това са местата,
13+
от където можете да започнете:
14+
15+
[Ruby потребителски групи](user-groups/)
16+
: Вашата локална потребителска група е страхотно място за комуникация с
17+
други програмисти. Групите са самоорганизирани, разполагат с пощенски
18+
списък, сайт, провеждат се месечни събирания и конференции.
19+
20+
[Ruby пощенски списъци и новинарски групи](mailing-lists/)
21+
: Ruby разполага с пощенски списъци на различни езици, обхващащи
22+
интересни и разнообразни теми. Ако имате въпрос относно Ruby, те са
23+
чудесно място за бърз и точен отговор.
24+
25+
[Ruby в IRC мрежата](irc://irc.freenode.net/ruby-lang)
26+
: IRC каналът на Ruby е прекрасно място за комуникация с други рубисти.
27+
([Чат логове][1])
28+
29+
[Ruby ядро](ruby-core/)
30+
: С предстоящото излизане на Ruby 2.0, сега е момента да следите
31+
развитието на неговото разработване. Ако искате да помогнете, това е
32+
мястото.
33+
34+
[Ruby блогове](weblogs/)
35+
: Тук можете да намерите списък от блогове, свързани с Ruby.
36+
37+
[Ruby конференции](conferences/)
38+
: Ruby програмистите по света все по-често организират конференции,
39+
където се събират, за да споделят интересни идеи, информация, да
40+
обсъждат бъдещето на езика и да посрещнат „новаците“ в Ruby
41+
обществото.
42+
43+
[Проектът Ruby Mentor][2]
44+
: Това е нов източник на информация, който има за цел да предоставя
45+
по-обширна документация за Ruby. Целта е да се улесни процеса на
46+
изучаване на Ruby.
47+
48+
Обща информация за Ruby
49+
: * [Ruby Central][3]
50+
* [Ruby в Open Directory Project][4]
51+
* [Rails в Open Directory Project][5]
52+
53+
54+
55+
[1]: http://meme.b9.com/
56+
[2]: http://rubymentor.rubyforge.org/
57+
[3]: http://www.rubycentral.org/
58+
[4]: http://dmoz.org/Computers/Programming/Languages/Ruby/
59+
[5]: http://dmoz.org/Computers/Programming/Languages/Ruby/Software/Rails/

bg/community/mailing-lists/index.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
layout: page
3+
title: "Пощенски списъци"
4+
lang: bg
5+
---
6+
7+
<div>
8+
**undefined tag `subscribe’**
9+
</div>
10+
11+
Ако имате проблем с потвърждаването на заявката, можете да използвате
12+
[ръчно записване](manual-instructions/).
13+
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
layout: page
3+
title: "Инструкции за пощенските списъци"
4+
lang: bg
5+
---
6+
7+
За да се запишете към пощенски списък, моля изпратете електронно писмо
8+
със следното съдържание:
9+
10+
subscribe Your-First-Name Your-Last-Name
11+
{: .code .mail-code}
12+
13+
e.g.
14+
15+
subscribe John Doe
16+
{: .code .mail-code}
17+
18+
Ruby-Talk
19+
: За Ruby-Talk, адреса за записване е
20+
21+
адреса публикуване е
22+
[[email protected]](mailto:[email protected]), адреса на
23+
администратора е
24+
25+
26+
Ruby-Core
27+
: For the Ruby-Core list, адреса за записване е
28+
29+
адреса публикуване е
30+
[[email protected]](mailto:[email protected]), адреса на
31+
администратора е
32+
33+
34+
Ruby-Doc
35+
: For the Ruby-Doc list, адреса за записване е
36+
37+
адреса публикуване е
38+
[[email protected]](mailto:[email protected]), адреса на
39+
администратора е
40+
41+
42+
Ruby-CVS
43+
: For the Ruby-CVS list, адреса за записване е
44+
45+
адреса публикуване е
46+
[[email protected]](mailto:[email protected]), адреса на
47+
администратора е
48+
49+
### Отписване
50+
51+
За да се отпишете от пощенски списък, изпратете писмо на адреса за
52+
записване със съдържание “unsubscribe”.
53+
54+
### Достъпни команди
55+
56+
За да видите списък с достъпните команди, изпратете писмо до адреса за
57+
записване със съдържание “help”.
58+

0 commit comments

Comments
 (0)