Исходный код раскрыть невозможно если для этого постарались обеспечить безопасность (особенно если это фирменная вещь).
Но есть способы полностью или частично раскрыть код.
- IDA Pro — самый лучший из безплатных взломщиков, некоторые макросы возможно позволяют преобразовать код назад. Но не всегда. Особо хорошо раскрываются borland-продукты.
Hiew.Exe
бесплатная утилита, очень маленькая, позволяет править код на языке ассемблера. Можно править текстовые и целые константы. Можно ею даже сделать «перевод» программы на другой язык, затереть имя фирмы и т.п.- Если есть PDB-файл, или подшита debug-info к файлу то код можно получить в среде разработки (если debug-info полная) редко можно использовать. Исходный код получить нельзя, но можно получить «номера строк и имена исходников», а так же имена/значения всех констант, локальных переменных, избежать «раздроблености функций» а так же получить классы с начинкой класса (почти все структуры кроме текста программы) что значительно упростит понимание работы программы. Для некоторых библиотек (dll) pdb-файлы можно скачать отдельно. Врядли уважающая себя фирма допустит утечку pdb своего стоящего продукта.
- Debug info, существует DebugInfo-информация встроеная в exe. Если есть такая информация, и соответствующая утилита (Например на Borland Delphi собран, и он есть в наличии), то можно сделать аналогичное предыдущему пункту. Но врядли уважающая себя фирма допустит такую «глупую» ошибку (аналогично pdb).
- Если файл написан на с# его можно почти полностью просмотреть в кодах с помощью disSharp (такие программы «подключают» в таблице импорта лишь mscorlib и всё). DisSharp плохо дизассемблирует некоторые части программы, но возможно его платная версия или платная версия подобных утилит раскрывает код лучше.
- Если файл написан на FoхPro, clipper и других подобный байт-кодовых языках — он раскрывается спец-утилитами (Refox например).
- Утилита
exescope.exe
ResourceHacker.exe
и её-подобные утилиты позволяют смотреть шапку, подключенные библиотеки (по ним можно понять на чём писана программа) и редактировать ресурсы программы (ресурс-формы в.т.ч. delphi, иконки, картинки, таблицы ресурсо-строк). - Если извесно чем создан код — думаю есть специальные утилиты способные его раскрыть (они платные и малодоступные).
Опять-же, это при условии что нету паковщика кода (тогда нужно сначала применить депаковщик), шифровальщика/самомодифицирующегося кода. Если не разбит обфускатором так что не распутать. Чем больше код — тем сложнее разобраться.
P.S. Лично моё мнение — раскрывается-взламывается всё, но на это нужно потратить много-много времени. Возможно год и более (зависит от опыта и инструментов, в свободном доступе хороших инструментов нету).
I’ve got some old Windows executable files. How can I edit them with Visual Studio 2010? What are the ways to see an exe’s source code?
MPelletier
16k15 gold badges86 silver badges136 bronze badges
asked Apr 17, 2010 at 18:37
You can’t get the C++ source from an exe, and you can only get some version of the C# source via reflection.
answered Apr 17, 2010 at 18:41
i_am_jorfi_am_jorf
53.2k15 gold badges128 silver badges220 bronze badges
2
If the program was written in C# you can get the source code in almost its original form using .NET Reflector. You won’t be able to see comments and local variable names, but it is very readable.
If it was written C++ it’s not so easy… even if you could decompile the code into valid C++ it is unlikely that it will resemble the original source because of inlined functions and optimizations which are hard to reverse.
Please note that by reverse engineering and modifying the source code you might breaking the terms of use of the programs unless you wrote them yourself or have permission from the author.
answered Apr 17, 2010 at 18:40
Mark ByersMark Byers
795k188 gold badges1562 silver badges1443 bronze badges
1
If it is native code, you can disassemble it. But you won’t see the original code as written by the programmer. You will see the code produced by the compiler. This code is possibly optimized and although it is semantically equivalent, it can be much harder to read than normal ASM.
If it is bytecode (MSIL or javabytecode), there are decompiler which can product pretty good sourcecode. For .net, this would be reflector.
answered Apr 17, 2010 at 18:40
HenriHenri
5,08521 silver badges24 bronze badges
I would (and have) used IDA Pro to decompile executables. It creates semi-complete code, you can decompile to assembly or C.
If you have a copy of the debug symbols around, load those into IDA before decompiling and it will be able to name many of the functions, parameters, etc.
answered Apr 17, 2010 at 18:43
ssubessube
46.3k7 gold badges101 silver badges139 bronze badges
There’s nothing you can do about it i’m afraid as you won’t be able to view it in a readable format, it’s pretty much intentional and it’ll show the interpreted machine code, there would be no formatting or comments as you normally get in .cs/.c files.
It’s pretty much a hit and miss scenario.
Someone has already asked about it on another website
answered Apr 17, 2010 at 18:42
Jamie KeelingJamie Keeling
9,69717 gold badges65 silver badges100 bronze badges
7
For Any *.Exe file written in any language .You can view the source code with hiew (otherwise Hackers view). You can download it at www.hiew.ru. It will be the demo version but still can view the code.
After this follow these steps:
-
Press alt+f2 to navigate to the file.
-
Press enter to see its assembly / c++ code.
Yogiraj
1,93217 silver badges29 bronze badges
answered May 28, 2014 at 13:14
I’ve got some old Windows executable files. How can I edit them with Visual Studio 2010? What are the ways to see an exe’s source code?
MPelletier
16k15 gold badges86 silver badges136 bronze badges
asked Apr 17, 2010 at 18:37
You can’t get the C++ source from an exe, and you can only get some version of the C# source via reflection.
answered Apr 17, 2010 at 18:41
i_am_jorfi_am_jorf
53.2k15 gold badges128 silver badges220 bronze badges
2
If the program was written in C# you can get the source code in almost its original form using .NET Reflector. You won’t be able to see comments and local variable names, but it is very readable.
If it was written C++ it’s not so easy… even if you could decompile the code into valid C++ it is unlikely that it will resemble the original source because of inlined functions and optimizations which are hard to reverse.
Please note that by reverse engineering and modifying the source code you might breaking the terms of use of the programs unless you wrote them yourself or have permission from the author.
answered Apr 17, 2010 at 18:40
Mark ByersMark Byers
795k188 gold badges1562 silver badges1443 bronze badges
1
If it is native code, you can disassemble it. But you won’t see the original code as written by the programmer. You will see the code produced by the compiler. This code is possibly optimized and although it is semantically equivalent, it can be much harder to read than normal ASM.
If it is bytecode (MSIL or javabytecode), there are decompiler which can product pretty good sourcecode. For .net, this would be reflector.
answered Apr 17, 2010 at 18:40
HenriHenri
5,08521 silver badges24 bronze badges
I would (and have) used IDA Pro to decompile executables. It creates semi-complete code, you can decompile to assembly or C.
If you have a copy of the debug symbols around, load those into IDA before decompiling and it will be able to name many of the functions, parameters, etc.
answered Apr 17, 2010 at 18:43
ssubessube
46.3k7 gold badges101 silver badges139 bronze badges
There’s nothing you can do about it i’m afraid as you won’t be able to view it in a readable format, it’s pretty much intentional and it’ll show the interpreted machine code, there would be no formatting or comments as you normally get in .cs/.c files.
It’s pretty much a hit and miss scenario.
Someone has already asked about it on another website
answered Apr 17, 2010 at 18:42
Jamie KeelingJamie Keeling
9,69717 gold badges65 silver badges100 bronze badges
7
For Any *.Exe file written in any language .You can view the source code with hiew (otherwise Hackers view). You can download it at www.hiew.ru. It will be the demo version but still can view the code.
After this follow these steps:
-
Press alt+f2 to navigate to the file.
-
Press enter to see its assembly / c++ code.
Yogiraj
1,93217 silver badges29 bronze badges
answered May 28, 2014 at 13:14
Как посмотреть код программы
Программы делятся на открытые и закрытые. В первом случае для всех пользователей интернета доступно скачивание ее исходного кода с официального сайта и других ресурсов, во втором – код системы закрыт и его просмотр нарушает правила пользования программным обеспечением.
Вам понадобится
- — декомпилятор;
- — дезассемблер.
Инструкция
Просмотрите исходный код программы при помощи ее исходника. Исходный файл содержит в себе код, написанный программистом при создании программного обеспечения, после этого он компилируется при помощи специальных иснструментов и превращается в файл установки.
Если вами был утерян файл исходного кода, или он недоступен вам по другим причинам, воспользуйтесь специальными программами-декомпиляторами. Также имеются программы-дизассемблеры. Обратите внимание, что просмотр исходного кода зачастую может стать невозможным в случаях, когда вам не известно, какой язык программирования использовался при его разработке.
Если вы хотите найти код свободной программы, выполните поиск в интернете с соответствующим запросом. Также попробуйте скачать данную программу и в ее меню найти пункт «Просмотр исходного кода». Обычно это доступно для бесплатно распространяемых программ.
Будьте осторожны при их использовании, в частности это относится к программам, скачанных не с сайта разработчика, поскольку в исходник может быть заложен вредоносный код, который при установке на ваш компьютер также инсталлирует трояны, клавиатурные шпионы и так далее.
Будьте внимательны при использовании программ-декомпиляторов, поскольку многие разработчики программного обеспечения пользуются специальными программами, которые затрудняют процесс воссоздания исходного кода. Если программа была написана на ассемблере, также принимаются специальные программы.
Средств обратной программной разработки достаточно немало, не используйте их в мошеннических целях или для внесения изменений в программы с закрытым кодом, поскольку зачастую за данные действия предусмотрена определенная ответственность в соответствии с законодательством.
Полезный совет
Не просматривайте код закрытых программ и тем более не вносите в него изменения.
Войти на сайт
или
Забыли пароль?
Еще не зарегистрированы?
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
0 / 0 / 1 Регистрация: 27.12.2011 Сообщений: 24 |
|
1 |
|
Как узнать исходный код программы?23.04.2012, 21:48. Показов 45896. Ответов 18
Есть файл с простой программой, мне надо узнать его исходный код. как это сделать? main.rar
__________________
0 |
Почетный модератор 28037 / 15768 / 981 Регистрация: 15.09.2009 Сообщений: 67,753 Записей в блоге: 78 |
|
23.04.2012, 21:49 |
2 |
никак.
0 |
0 / 0 / 1 Регистрация: 27.12.2011 Сообщений: 24 |
|
24.04.2012, 01:54 [ТС] |
3 |
никак. очень понятный и развёрнутый ответ.
0 |
8385 / 6147 / 615 Регистрация: 10.12.2010 Сообщений: 28,683 Записей в блоге: 30 |
|
24.04.2012, 03:23 |
4 |
0 |
7175 / 3234 / 80 Регистрация: 17.06.2009 Сообщений: 14,164 |
|
24.04.2012, 07:19 |
5 |
очень понятный и развёрнутый ответ Главное что он правильный Добавлено через 46 секунд Потребуется несколько вещей
2 |
0 / 0 / 1 Регистрация: 27.12.2011 Сообщений: 24 |
|
24.04.2012, 09:52 [ТС] |
6 |
Потребуется несколько вещей спасибо, обязательно воспользуюсь этим методои
0 |
В астрале 8048 / 4805 / 655 Регистрация: 24.06.2010 Сообщений: 10,562 |
|
24.04.2012, 10:39 |
7 |
Jgo Gankster, Была бы прога на .NET узнавалось бы легко.
0 |
Заблокирован |
|
24.04.2012, 12:17 |
8 |
Jgo Gankster, исходный код, верней его асемблерный вариант можно получить в ходе дизасемблирования. Существует множество программ к примеру OllyDebuger который преобразуют экзешники в асмовские инструкции. Если понимаем асм, то по полученной интерпритации кода можно сообразить где выводим строку, где светим окошко и т.д. Ну а там зная принцип работы алгоритма либо пишем аналог на Си либо осавляем в асме и правим под наши нужды(это называется крэком или варезом).
0 |
Заблокирован |
|
24.04.2012, 12:40 |
9 |
Кстати некоторые вещи можно сказать по программе просто открыв экзешник в блокноте Не по теме: PS:Вспомниаю слова оператора из первой Матрицы . ..- со временем я привык видеть что значит код, к примеру здесь я вижу полицейского, а здесь шикарную блондинку… Вот так и с дизасмом Миниатюры
0 |
Xorazm 1 / 1 / 0 Регистрация: 19.06.2017 Сообщений: 32 |
||||
23.06.2017, 09:26 |
10 |
|||
0 |
1488 / 1203 / 821 Регистрация: 29.02.2016 Сообщений: 3,592 |
|
23.06.2017, 10:24 |
11 |
Потребуется несколько вещей все гораздо проще:
0 |
Software Developer 315 / 229 / 113 Регистрация: 03.05.2017 Сообщений: 1,306 |
|
23.06.2017, 10:31 |
12 |
Jgo Gankster, воспользуйтесь IDA Pro (для дизасемблирования) + Hex Rays (для преобразования в Си подобный код)
0 |
Почетный модератор 28037 / 15768 / 981 Регистрация: 15.09.2009 Сообщений: 67,753 Записей в блоге: 78 |
|
23.06.2017, 11:36 |
13 |
decrement, я не думаю, что спустя 5 лет твой совет нужен Jgo Gankster,
0 |
5225 / 3197 / 362 Регистрация: 12.12.2009 Сообщений: 8,101 Записей в блоге: 2 |
|
23.06.2017, 11:49 |
14 |
Почему до сих пор не посоветовали рабочий способ? Нужно сменить расширение файла на .cpp (или на другой язык программирования) и открыть в IDE. Умные люди так, например, jpg в gif конвертят и т.д.
0 |
Software Developer 315 / 229 / 113 Регистрация: 03.05.2017 Сообщений: 1,306 |
|
23.06.2017, 12:04 |
15 |
Почему до сих пор не посоветовали рабочий способ? Нужно сменить расширение файла на .cpp (или на другой язык программирования) и открыть в IDE. Умные люди так, например, jpg в gif конвертят и т.д. юмор понял
я не думаю, что спустя 5 лет твой совет нужен я на дату и не посмотрел даже)
0 |
45 / 45 / 23 Регистрация: 14.04.2013 Сообщений: 188 |
|
23.06.2017, 23:06 |
16 |
ну раз уж на то пошло, спрошу тут, а как сделать наоборот, в программе создаю shh подключение с логином и паролем(простые строки), как их спрятать от дизасемблирования
0 |
Software Developer 315 / 229 / 113 Регистрация: 03.05.2017 Сообщений: 1,306 |
|
23.06.2017, 23:33 |
17 |
ну раз уж на то пошло, спрошу тут, а как сделать наоборот, в программе создаю shh подключение с логином и паролем(простые строки), как их спрятать от дизасемблирования как бы вы не прятали всё равно можна прочесть
0 |
зомбяк 1564 / 1213 / 345 Регистрация: 14.05.2017 Сообщений: 3,936 |
|
23.06.2017, 23:39 |
18 |
Zazy, от дизассемблирование ничто не может защитить, ибо это, простите, инструкции, которые процессор делать должен. А значит понимать. А вот от дальнейшего понимания того, что собственно выполняет процессор, есть это — https://ru.wikipedia.org/wiki/… еспечение)
0 |
290 / 87 / 28 Регистрация: 25.01.2016 Сообщений: 529 Записей в блоге: 1 |
|
24.06.2017, 14:33 |
19 |
Потребуется несколько вещей Бедный автор программы… Добавлено через 15 секунд
Потребуется несколько вещей Бедный автор программы…
0 |
Исходный код программы на С — это текстовая запись программы на языке программирования С. Исходный код на С пишется таким образом, чтобы любой программист, владеющий этим языком программирования, смог разобрать, что там написано.
С — это язык программирования, который проверен временем. Изначально он задумывался как заменитель Ассемблера, чтобы писать на нем операционные системы.
С — это высокоуровневый язык, который не зависит от архитектуры устройства, а это значит, что программы, написанные на нем, можно использовать на разных платформах. Таким образом, С стал идеальным языком для операционных систем, драйверов и программ системного значения.
Исходный код программы на С
Сегодня языки программирования С и С++ ставят рядом, потому что С++ — это улучшенная версия С.Таким образом, программы, которые пишутся на С, будут корректными и для языка программирования С++. Из этого получается, что для извлечения исходного кода программы на С можно использовать инструменты, предназначенные для С++, но об этом чуть позже.
Исходный код программы на С — это программный код, который еще не был скомпилирован и содержится в файлах с расширением данного языка. У этого языка имеется несколько расширений, и делятся они в зависимости от типов файлов:
заголовочный файлы используют расширение «.h», поэтому называются h-файлы;
файлы реализации используют расширение «.с» для языка С и «.срр», «.схх», «.сс» для языка программирования С++.
Любой проект, реализованный на С, будет иметь файлы обоих типов. Но нужно отметить, что:
h-файлы — это файлы, содержащие сведения о программе;
файлы реализации — это сам код программы.
Когда вам нужен исходный код программы на С, то больший интерес вам представляют файлы реализации. При этом единую функционирующую программу составляют оба вида файлов.
Как получить исходный код программы на С
Исходный код априори принадлежит своему автору. Поэтому если автор кода выставляет его в открытые источники, то пользователи получают программу с открытым исходным кодом. В этой ситуации пользователи могут воспользоваться исходным кодом программы по своему усмотрению, например:
помочь доработать программу, вплоть до того, чтобы стать соавтором;
использовать код, чтобы создать подобную программу, однако тут есть тонкости: нужно будет указать автора исходного кода или что-то еще;
чуть-чуть подправить программу для личного пользования;
и др.
Если автор скрывает исходный код программы, то получить его:
противозаконно, потому что авторы закрывают код и защищают его лицензиями;
очень сложно, а иногда практически невозможно.
Процесс получения исходного кода из закрытой программы — это реверсивная инженерия или обратное программирование. У закрытых программ пользователи не могут видеть исходный код программы, лишь ее исполняемые или скомпилированные файлы, например, файлы «.ехе» для Windows-программ. Если открыть исполняемый или скомпилированный файл, то там не будет ничего общего с языком программирования. Все, что там можно будет увидеть, — это беспорядочный набор цифр и букв или двоичный код из сочетания «1» и «0».
Исходный код программы на С: обратное программирование
Обратное программирование — это длительный и муторный процесс. Чем больше программа, для которой вы хотите получить исходный код, тем сложнее будет этот процесс. В некоторых случаях процесс «реверса» займет несколько лет, например, попробуйте воссоздать исходный код операционной системы Windows.
Реверсное программирование завязано на применении специфического программного обеспечения: декомпиляторы, дешифровщики, деобфускаторы, отладчики, оптимизаторы и т. д. В этом заключается еще одна сложность — достать качественные программы из этой категории в открытом доступе практически нереально. Все, что есть в открытом доступе, может помочь только с небольшими программами. Если вам нужен будет исходный код более серьезной программы на С, то искать специализированное ПО — это та еще затея, но поисковик, анонимные сообщества хакеров и darknet вам в помощь, при том что способы попробовать восстановить исходный код полностью или частично есть.
Способы попробовать восстановить исходный код программы на С:
IDA Pro — одна из лучших и бесплатных программ из категории «реверсивная инженерия»;
«hiew.exe» — утилита, которая не выдаст исходный код программы, но поможет править его на языке ассемблера;
нужно внимательно посмотреть имеющийся код программы: если к нему подшиты PDB-файлы (опытные программисты этого не делают, но мало ли что), тогда есть возможность прямо в IDE узнать номера строк исходников, имена переменных, функций, констант и т. д.; при помощи такого подхода добиться исходного кода не получится, но у вас будет вся информация для того, чтобы понять, как он функционирует;
необходимо проверить, не встроен ли в программу «debug info»: если встроен, то можно использовать его, как и в предыдущем способе, чтобы узнать информацию об исходном коде;
DisSharp — программа, которая способна раскрыть часть кода на С++ и С#;
Refox — данная утилита поможет, если программа на С скомпилирована в какой-либо байт-кодовый язык;
exe.scope.exe или Resourcehacker.exe — утилиты, которые не раскрывают исходный код, но помогают определить, какие библиотеки используются в программе.
Универсальных средств нет. Нет такого, чтобы вы запустили какое-то программное обеспечение, и оно вам выдало исходный код программы на С. Чтобы добиться исходного кода, нужно будет повозиться и узнавать все частями. Например:
при помощи одной утилиты вы узнаете используемые библиотеки;
при помощи другой — имена классов и функций;
третья поможет частично раскрыть код;
и т. д., пока у вас не сложится общая картина об исходниках.
Опять же, если код хорошо защищен, то сам процесс становится намного сложнее, потому что тогда нужно будет разбираться с защитой, прежде чем применять какие-то утилиты для обнаружения исходников.
Заключение
Если вам нужен исходный код программы на С, а он закрыт, то вам остается только обратное программирование. Прежде чем начать этот процесс, подумайте об ответственности, ведь реверсивная инженерия — это нарушение авторских прав и законодательства многих государств.
Содержание
- Способы декомпиляции EXE-файлов
- Способ 1: VB Decompiler
- Способ 2: ReFox
- Способ 3: DeDe
- Способ 4: EMS Source Rescuer
- Вопросы и ответы
Декомпиляция подразумевает воссоздание исходного кода программы на том языке, на котором она была написана. Иными словами, это процесс обратный процессу компиляции, когда исходный текст преобразуется в машинные инструкции. Декомпиляцию можно провести, используя специализированный софт.
Декомпиляция может быть полезной автору ПО, который потерял исходные коды, или просто пользователям, желающим узнать свойства той или иной программы. Для этого существуют специальные программы-декомпиляторы.
Способ 1: VB Decompiler
Первым рассмотрим VB Decompiler, который позволяет декомпилировть программы, написанные на Visual Basic 5.0 и 6.0.
Загрузить программу VB Decompiler
- Нажмите «Файл» и выберите пункт «Открыть программу» (Ctrl+O).
- Найдите и откройте программу.
- Декомпиляция должна сразу запуститься. Если этого не произошло, нажмите кнопку «Старт».
- По завершении внизу окна появится слово «Декомпилировано». В левой части расположено дерево объектов, а в центральной можно просматривать код.
- При необходимости, сохраните декомпилированные элементы. Для этого нажмите «Файл» и выберите подходящий вариант, например, «Сохранить декомпилированный проект», чтобы извлечь все объекты в папку на диске.
Способ 2: ReFox
В плане декомпиляции программ, скомпилированных через Visual FoxPro и FoxBASE+, неплохо себя зарекомендовал ReFox.
Загрузить программу ReFox
- Через встроенный обозреватель файлов найдите нужный EXE-файл. Если его выделить, то справа будет отображаться краткая информация о нём.
- Откройте контекстное меню и выберите пункт «Decompile».
- Откроется окно, где нужно указать папку для сохранения декомпилированных файлов. После нажмите «ОК».
- По окончании появится такое сообщение:
Можно просмотреть результат в указанной папке.
Способ 3: DeDe
А DeDe будет полезна для декомпиляции программ на Delphi.
Загрузить программу DeDe
- Нажмите кнопку «Добавление файла».
- Найдите файл EXE и откройте его.
- Для запуска декомпиляции нажмите кнопку «Процесс».
- При успешном завершении процедуры появится такое сообщение:
- Для сохранения всех этих данных откройте вкладку «Project», проставьте галочки рядом с типами объектов, которые нужно сохранить, выберите папку и нажмите «Сделать файлы».
В отдельные вкладки будет выведена информация о классах, объектах, формах и процедурах.
Способ 4: EMS Source Rescuer
Декомпилятор EMS Source Rescuer позволяет работать с EXE-файлами, скомпилированными при помощи Delphi и C++ Builder.
Загрузить программу EMS Source Rescuer
- В блоке «Executable File» нужно указать нужную программу.
- В «Project name» пропишите имя проекта и нажмите «Next».
- Выберите необходимые объекты, укажите язык программирования и нажмите «Next».
- В следующем окне исходный код доступен в режиме предпросмотра. Осталось выбрать выходную папку и нажать кнопку «Save».
Мы рассмотрели популярные декомпиляторы для файлов EXE, написанных на разных языках программирования. Если Вам известны другие рабочие варианты, напишите об этом в комментариях.
Еще статьи по данной теме:
Помогла ли Вам статья?
Когда разработчики выпускают свое программное обеспечение с открытым исходным кодом, это показывает, что они заслуживают доверия и щедры. Программное обеспечение с открытым исходным кодом был одним из главных моментов, которые лично помогли мне начать работать программистом-самоучкой.
Чтобы проект был открытым, разработчик должен сделать его исходный код общедоступным, чтобы любой желающий мог его изучить и извлечь уроки. Важно отметить, что это также показывает, что у разработчика нет злонамеренных намерений, поскольку открытый исходный код позволяет пользователям компилировать свои собственные двоичные файлы, а не использовать предоставленные.
Если вам когда-либо приходилось сталкиваться с двумя программами, и вы не можете определить, какое из них использовать, проверьте, является ли один из них открытым, а другой — нет. Если это так, ваш выбор должен быть ясным.
Однако, если вы хотите учиться или даже добавлять к коду исходного кода программного обеспечения, это также вариант. Для этого вам нужно знать, как просматривать исходный код. В этой статье давайте поговорим о том, как вы можете это сделать.
Как найти исходный код
После того, как вы нашли часть программного обеспечения с открытым исходным кодом, которое вы хотели бы просмотреть в исходном коде, первым делом нужно выяснить, как сделать исходный код проекта доступным.
В большинстве случаев исходный код будет размещаться на крупнейшей веб-платформе управления версиями, GitHub,
Что такое GitHub?
GitHub был основан в 2008 году и приобретен Microsoft в 2018 году. Это глобальная платформа для разработки программного обеспечения, которая предлагает все функции управления исходным кодом: Гитнаряду с собственными функциями, которые расширяют возможности совместной работы и функции контроля версий.
Чаще всего разработчики размещают свой открытый исходный код на GitHub. Несколько примеров программного обеспечения, о котором вы, вероятно, слышали, с исходным кодом, доступным на GitHub: LibreOffice, GIMP, а также VLC медиаплеер,
С помощью Функция поиска GitHubвы должны быть в состоянии найти и просмотреть исходный код практически для каждого крупного программного проекта с открытым исходным кодом.
Как просмотреть исходный код
Найдя репозиторий GitHub, в котором находится исходный код программного обеспечения, вы обнаружите, что все организовано в базовом дереве каталогов. Для файлов GitHub делает просмотр кода очень простым.
Как платформа для разработки, GitHub аккуратно форматирует исходный код через веб-интерфейс. Почти все авторитетные проекты будут включать README.md, который представляет собой файл уценки, который отображает полезную информацию о хранилище и его структуре. Когда вы перейдете к хранилищу, прокрутите вниз, и вы увидите содержимое этого файла.
README.md репозитория важно проверить, потому что он часто указывает пользователям направление исходного кода, который их может заинтересовать. Репозиторий может быть заполнен всеми видами кода и другими данными, некоторые из которых совершенно бесполезны для вас. , так что этот файл — ваша дорожная карта.
Как только вы выясните, где в репозитории находится интересующий вас код, все, что вам нужно сделать, — это щелкнуть по дереву каталогов репозитория, чтобы найти, куда вы хотите перейти.
Щелчок по файлу отобразит его с правильной подсветкой синтаксиса.
Для быстрой проверки веб-интерфейс GitHub отлично подходит. Однако для более сложного исходного кода вам может потребоваться просмотреть несколько файлов одновременно или в течение длительного периода времени. В этом случае мы рекомендуем скачать и просмотреть исходный код через Текстовый редактор, например, Sublime Text.
Загрузка исходного кода
Загрузка репозитория с GitHub занимает всего два клика.
В верхней части каждого репозитория, под строкой, отображающей общее количество коммитов, веток, пакетов, выпусков и участников, вы увидите зеленую кнопку с надписью Клонировать или загрузить. Нажмите на нее и выберите Скачать ZIP.
По умолчанию начнется загрузка главной ветви текущего репозитория в виде файла ZIP. По завершении все, что вам нужно сделать, это извлечь архив в локальную папку на вашем компьютере. Затем, используя текстовый редактор, вы можете открыть любой из файлов репозитория гораздо быстрее, не требуя браузера.
Если вы не опытный кодер, GitHub может сначала немного запутать. Если вы просто думаете об этом как об открытом каталоге исходного кода, с readme на верхнем уровне, это не слишком пугающе. Просмотр исходного кода с помощью GitHub прост, как локально, так и через его веб-интерфейс.