Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.08.24;
Скачать: [xml.tar.bz2];

Вниз

требуется программист Delphi   Найти похожие ветки 

 
DRG   (2008-06-11 10:48) [40]


> Просто я сталкивался с конторами, которые поступали так:
>  берут человека на "тестовый" период, для выполнения "тестовых"
> задач. После окончания "тестового", когда надо бы поднять
> зарплату, говорят "до свидания
>


На этом не экономят. Намного дешевле будет взять человека на длительный период - это очевидно и понятно любому. Т.к. одна программа - один человек - он знает все тайные  и критические места, знает баги которые могут возникнуть. Быстро фиксит появившиеся баги. Итп.

Каждый приходящий новый человек вносит свои изменения, в итоге это превращается в ад. Это все понимают, т.к. это очевидно.
Та контора с которой вы возможно вы сталкивались, развалилась бы сразу кое как написав одну программу.
Там где я работаю также есть испытательный срок - месяц или 2 месяца, и процентов 30 не проходят первый месяц, - по уровню подготовки, поэтому все что он написал, выбрасывается - т.к. нет смысла держать и продолжать.
Даже если продолжить написанное, - то это повторюсь, внесет множество путанниц, в итоге продукт не получится вообще.
Возможно вы с этим и столкнулись, интерпретировав из-за обиды эту ситуацию таким образом.
Так что на этом совсем не сэкономишь - одни растраты.


 
DRG   (2008-06-11 10:53) [41]

Хотя мы наверное путаем тестовое задание, которое пишется в течении двух - четырех дней и испытательный срок который может идти несколько недель..


 
KSergey ©   (2008-06-11 11:20) [42]

> korneley ©   (11.06.08 10:32) [39]
> поступали так: берут человека на "тестовый" период, для
> выполнения "тестовых" задач.

Так тестовое задание или тестовый период?? Это ж разные вещи.
А в тестовый период уже "тестовые" задачи - ен выполняют, это ж понятно никому не надо.


 
Romkin ©   (2008-06-11 11:52) [43]


> Собственно я его и освоил где-то за чуть меньше месяца,
> когда переходил с Си++.Полюбился мне этот язык очень - за,
>  не побоюсь этого слова, гениальную простоту (после Си++).
>  Конечно потом набирался еще опыта. Но если знаешь один
> язык, выучить другой намного проще и быстрее - это факт,
>  который подтвердят люди знающие больше одного языка.


> бррр. Хорошо зная Си++ освоить ЯЗЫК дельфи можно за 3 дня.
>  Ничего такого, чего нету в С++, кроме гениального string.

Да, освоить похожий язык можно быстро. Но полностью за месяц - очень вряд ли. Тем более, что многие вещи в Delphi решаются совсем иначе, чем в С++.
Освоить язык - это не просто выучить синтаксис, но и научиться мыслить в терминах этого языка. А на это месяца мало, на мой взгляд.
Программы, написанные на Delphi сишником - душераздирающее зрелище, как правило. Средства С++ а синтаксис Delphi :)
Впрочем, обратное тоже верно :)


 
Romkin ©   (2008-06-11 11:57) [44]


> До сих пор при решении особенно запутанных задач не ленюсь
> рисовать блок-схемы и делать отладку на бумаге с ручкой
> и карандашами двух цветов ;) Результат, как правило, один
> и тот же - код практически сразу работает ! К сожалению,
>  нынешняя молодежь вовсе не пользуется блок-схемами. Иногда
> приходится заставлять ;(

Хм. Я ими не пользуюсь исходно. На мой вгляд, программа на Паскале - та же блок-схема. Зачем повторяться?
Впрочем, отладкой тоже - изредка запустить с парой точек останова. А так - мне исключение скажет, что не в порядке.


 
clickmaker ©   (2008-06-11 12:03) [45]

> душераздирающее зрелище, как правило. Средства С++ а синтаксис
> Delphi

например?


 
MsGuns ©   (2008-06-11 12:11) [46]

>Хм. Я ими не пользуюсь исходно. На мой вгляд, программа на Паскале - та же блок-схема. Зачем повторяться?

Нет, вовсе не та. К коде, как правило, приходится разбивать весь алгоритм на куски (модули, библитотеки, процедуры, функции) и увидеть все в целом невозможно, т.к. "прыгая" по процедурам и юнитам, легко потерять общую канву. На блок-схеме же все прекрасно видно.
Хотя, конечно, есть люди с супермышлением, у которых в голове "умещаются" даже такие грандиозные вещи, как чертежи конструкции самолета ;)
Кроме того, блок-схема существенно поможет "въехать" в алгоритм новому человеку.
Да и от языка она практически не зависит.

Жаль только, что нереально в нынешнее время каждый проект "оснащать" подробными и достоверными блок-схемами.


 
Romkin ©   (2008-06-11 12:20) [47]


> например?

Ох. Так вот навскидку - сложно. Проще найти сишника и попросить написать...
Но вот, недавно встретилось подобное:
const
IID_IPicture  : TGUID = "{7BF80980-BF32-101A-8BBB-00AA00300CAB}";

procedure LoadPictureFile(Name : String);
var
aFile     : HFILE;
pstm      : IStream;
pvData    : Pointer;
dwBytesRead   : DWORD;
dwFileSize    : DWORD;
Global    : HGLOBAL;
i:longint;
begin

aFile := CreateFile(PChar(Name), GENERIC_READ, 0, NIL, OPEN_EXISTING, 0, 0);
if aFile = INVALID_HANDLE_VALUE then
  Exit;
dwFileSize := GetFileSize(aFile, NIL);
if dwFileSize = -1 then
  Exit;

pvData := NIL;

Global := GlobalAlloc(GMEM_MOVEABLE, dwFileSize);
if Global = 0 then
begin
  CloseHandle(aFile);
  Exit;
end;

pvData := GlobalLock(Global);
if pvData = NIL then
  Exit;

dwBytesRead := 0;

if not ReadFile(aFile, pvData^, dwFileSize, dwBytesRead, NIL) then
  Exit;

GlobalUnlock(Global);
CloseHandle(aFile);

pstm := NIL;

if CreateStreamOnHGlobal(Global, True, pstm) <> S_OK then
  Exit;
if pstm = NIL then
  Exit;

if Assigned(gpPicture) then
  gpPicture := NIL;
if OleLoadPicture(pstm, dwFileSize, False, IID_IPicture, gpPicture) <> S_OK then
begin
  pstm := NIL;
  Exit;
end;
GlobalFree(Global);
pstm := NIL;
end;

Либо буквальный перевод с С++, либо просто сишник писал.


 
Romkin ©   (2008-06-11 12:26) [48]


> Нет, вовсе не та. К коде, как правило, приходится разбивать
> весь алгоритм на куски (модули, библитотеки, процедуры,
> функции) и увидеть все в целом невозможно, т.к. "прыгая"
> по процедурам и юнитам, легко потерять общую канву. На блок-
> схеме же все прекрасно видно.

Это ж какая блок-схема доолжна быть?!
Нетушки. Модули и предназначены для разграничения кусков. И чем меньше связей - тем лучше. Мне, как правило, скакать приходится максимум по двум модулям, чтобы увидеть, что делается.


 
clickmaker ©   (2008-06-11 12:58) [49]

> [47] Romkin ©   (11.06.08 12:20)

Скорей всего, тупой перевод на скорую руку.
Любой сишник, оценив удобство try - finally, вряд ли будет долго цепляться за кучу if - Exit


 
Павел Калугин ©   (2008-06-11 13:06) [50]

> [11] Riply ©   (10.06.08 21:56)

И еще как, при условии что задачц выдвет человек способный ее решить.

> [21] Riply ©   (10.06.08 23:16)

а эта неувязочка обратно постановщику с запросом увеличения лимита времни


> [32] KSergey ©   (11.06.08 08:01)

ну для начала, в нашем случае, в "аренду спеца" уже входит "аренда стола" ибо спец сам себя обеспечивает компутером, тырнетом, крышей над головой, столом, стулом, электричеством, и так далее. А это само по себе не такие малые деньги.


 
Romkin ©   (2008-06-11 13:10) [51]


> Скорей всего, тупой перевод на скорую руку.Любой сишник,
>  оценив удобство try - finally, вряд ли будет долго цепляться
> за кучу if - Exit

Да, скорее всего. Но тут не только это. Тут и IID_IPicture не нужно, и IStream из файла в одну строчку получить можно, и страсть сигнализировать об ошибке возвращая NULL или статус вместо генерации исключения...
Ну не верю я, что за месяц можно освоить system, typinfo и classes с SysUtils например. Освоить - чтобы знать, что там есть и как это работает. А ведь это практически основа.


 
DRG   (2008-06-11 13:15) [52]


> 2 Павел Калугин ©  


Страховки не оплачиваются, налоги как правило тоже не берет на себя работодатель, кофе тоже не оплачивает, мебель не закупает :)
В сумме это очень приличные деньги.
Я ж и говорю - по идее на удаленке должны платить больше чем офисным служащим.


 
DRG   (2008-06-11 13:20) [53]

О-да, первое за что будет братся обучающийся в первый месяц это system и typinfo :)


 
Anatoly Podgoretsky ©   (2008-06-11 13:27) [54]

> DRG  (11.06.2008 13:20:53)  [53]

Первый месяц переходящий из Си будет ругаться, как гадость эта ваша заливная рыба.


 
Sapersky   (2008-06-11 13:39) [55]

Любой сишник, оценив удобство try - finally, вряд ли будет долго цепляться за кучу if - Exit

А разве API-функции, рассчитанные на возврат кода ошибки, возбуждают исключения? Если нет, то я сомневаюсь, что с try-finally получится короче.

и IStream из файла в одну строчку получить можно

То, чем можно, в стандартных заголовках D5-D7 не описано.


 
clickmaker ©   (2008-06-11 13:42) [56]

> А разве API-функции, рассчитанные на возврат кода ошибки,
> возбуждают исключения?

Win32Check(CreateFile(...) <> INVALID_HANDLE_VALUE)

OleCheck(CreateStreamOnHGlobal(...))


 
Romkin ©   (2008-06-11 13:49) [57]


> То, чем можно, в стандартных заголовках D5-D7 не описано.

Что такое "стандартные заголовки"?

> А разве API-функции, рассчитанные на возврат кода ошибки,
>  возбуждают исключения? Если нет, то я сомневаюсь, что с
> try-finally получится короче.

Короче-короче, не сумлевайся. Даже без исключений. Хотя бы потому, что finally и на exit срабатывает.
Есть еще win32Check, RaiseLastOSError, OleCheck...


 
Romkin ©   (2008-06-11 13:54) [58]

clickmaker ©   (11.06.08 13:42) [56], утрируя:
pstm := TStreamAdapter.Create(TFileStream.Create(Name, fmOpenRead), soOwned);


 
Sapersky   (2008-06-11 14:33) [59]

Win32Check(CreateFile(...) <> INVALID_HANDLE_VALUE)

А, ну да. "Когда-то знал, но забыл". Спасибо, что напомнили.

Что такое "стандартные заголовки"?

ActiveX.pas. CreateStreamOnHGlobal там есть, а этой функции:
function SHCreateStreamOnFileA(FileName: PChar; grfMode: DWORD; var stream: IStream):HResult; stdcall; external "shlwapi.dll" name "SHCreateStreamOnFileA";
...которую я подразумевал под "одной строчкой" - нет.
А вы имели в виду TStreamAdapter? Ну точно, я - сишник, даром что Си никогда не любил :)


 
Kent   (2008-06-11 14:37) [60]


> Короче-короче, не сумлевайся. Даже без исключений. Хотя
> бы потому, что finally и на exit срабатывает.


Толку то, чтобы загасить это исключение придется как минимум писать пустой try except  - а над ним -  try finally. Так что это спорный вопрос что удобнее и запутанней.


 
wl ©   (2008-06-11 15:10) [61]

а в коде из [47] случайно не возникнет утечка памяти и незакрытый хендл файла после некоторых Exit; ?


 
Пробегал2....   (2008-06-11 15:26) [62]

@!!ex ©   (11.06.08 7:48) [31]
std::string ну ничем не отличается от гениального string


а это в любом С++ компиляторе встроено?


 
Игорь Шевченко ©   (2008-06-11 15:28) [63]

хотел бы я знать, чем код в [47] отличается от
try
 try
   try
     try
    .........
     finally
    ....
   finally
  ...
 finally
...
finally

и еще кучи except внутри по ясности и удобочитаемости.


 
wl ©   (2008-06-11 15:43) [64]


> Пробегал2....   (11.06.08 15:26) [62]

да, stl (в составе которого std::string) входит в стандарт языка c++


 
Romkin ©   (2008-06-11 16:19) [65]

Входит-то входит, но почему-то все стараются свою строку написать.
CString, QString, BSTR и тд.  
Вот в Delphi, кажется, никому в голову не приходит свою реализацию строк написать.


 
clickmaker ©   (2008-06-11 16:22) [66]

> [65] Romkin ©   (11.06.08 16:19)
> Входит-то входит, но почему-то все стараются свою строку
> написать

потому что кроме строк там еще до фига кода, в котором без стакана сложно разобраться )


 
Игорь Шевченко ©   (2008-06-11 16:22) [67]


> Вот в Delphi, кажется, никому в голову не приходит свою
> реализацию строк написать.


В MS тоже. Странно, да ?


 
Игорь Шевченко ©   (2008-06-11 16:23) [68]


> Вот в Delphi, кажется, никому в голову не приходит свою
> реализацию строк написать


В C++Builder кстати реализованы Delphi-строки (AnsiString)


 
Romkin ©   (2008-06-11 16:25) [69]


> В C++Builder кстати реализованы Delphi-строки (AnsiString)

Угу, до кучи :)

> В MS тоже. Странно, да ?

А CString?!


 
Anatoly Podgoretsky ©   (2008-06-11 16:29) [70]

> Romkin  (11.06.2008 16:19:05)  [65]

Потому что в Дельфи это элемент языка, а не библиотечное расширение.


 
Игорь Шевченко ©   (2008-06-11 16:31) [71]


> А CString?!


Ну да. А что, кроме нее в MS еще кучу строк реализовали ?


 
wl ©   (2008-06-11 16:32) [72]

насчёт CString - вероятно, это сделано с целью совместимости, например, если MFC появился раньше, чем STL вошел в стандарт языка.
в BCBuilder 6 кстати тоже можно пользоваться std::*, там включена реализация STLPort, довольно неплохая


 
Romkin ©   (2008-06-11 16:34) [73]


> Ну да. А что, кроме нее в MS еще кучу строк реализовали
> ?

А BSTR? :D


 
Игорь Шевченко ©   (2008-06-11 16:35) [74]


> А BSTR? :D


Это OLE-тип и к С++ не имеет ни малейшего отношения, OLE от языка не зависит


 
Игорь Шевченко ©   (2008-06-11 16:35) [75]


> А BSTR? :D


В Delphi тоже есть


 
@!!ex ©   (2008-06-11 16:35) [76]

> [65] Romkin ©   (11.06.08 16:19)

Чем std::string плох?
В нем вроде все тоже самое что и в дельфевом стринге...
А делают свои... наверно гемороя хочется.


 
Mystic ©   (2008-06-11 16:43) [77]

> Чем std::string плох?

Многие библиотеки, которые были разработаны до стандарта, используют свои строки (wxString, CString, ...) Ну и "test" + " " + "text" не напишешь.


 
Romkin ©   (2008-06-11 16:47) [78]


> Это OLE-тип и к С++ не имеет ни малейшего отношения, OLE
> от языка не зависит

Однако в С++ он есть! И еще wchar_t, _bstr_t, char*
Ик!


 
Игорь Шевченко ©   (2008-06-11 16:50) [79]

Romkin ©   (11.06.08 16:47) [78]


> Однако в С++ он есть! И еще wchar_t, _bstr_t, char*


в C++ из перечисленных тобой есть только char*

То, что написано через #define и typedef типами не является. Ку ?

Если <IYFEGH> напишет в Delphi
type
 MySuperPuper = string;
от этого в языке нового типа строки не появится.


 
Romkin ©   (2008-06-11 16:52) [80]

Да какая разница? Когда в одном исходнике встречается три-четыре разных типа строки - тут поллитрой не обойдешься :)



Страницы: 1 2 3 4 вся ветка

Форум: "Прочее";
Текущий архив: 2008.08.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.63 MB
Время: 0.046 c
15-1214997047
Smile
2008-07-02 15:10
2008.08.24
:(


2-1216296405
Igor_34
2008-07-17 16:06
2008.08.24
Имя компьютера


10-1148989839
Andrey_Gor
2006-05-30 15:50
2008.08.24
Error: "Интерфейс не поддерживается"


2-1216194913
Gamer
2008-07-16 11:55
2008.08.24
как лучше сделать выбор с БД


2-1216559033
ДжоШуа
2008-07-20 17:03
2008.08.24
не понимаю





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский