прибытие из удара, что язык сценариев окон учиться?

То, что вы ищете, называется defer. Он определяет блок кода, который не выполняется до тех пор, пока выполнение не собирается покинуть текущую область, но оно всегда выполняется.

func processFile(filename: String) throws {
    if exists(filename) {
        let file = open(filename)
        defer {
            close(file)
        }
        while let line = try file.readline() {
            /* Work with the file. */
        }
        // close(file) is called here, at the end of the scope.
    }
}

Подробнее о defer см. В документации Apple Swift, особенно в разделе «Задание действий по очистке» .

7
задан Ian Kelling 23 June 2009 в 00:54
поделиться

7 ответов

Если вы изучаете .NET, Powershell - единственный выбор. VBScript существует гораздо дольше, поэтому, вероятно, существует больше примеров и примеров для VBScript. Но Powershell - это то место, где Microsoft сосредотачивает внимание на написании сценариев будущего. Он включен в WS2008 (R2), он будет в Win 7 и может быть добавлен в Vista, WS2003 или WS2008. Powershell имеет стратегическое значение. Я считаю его намного более мощным, чем VBScript.

Сообщество вокруг Powershell также растет. Только один пример: если вы зайдете на powershell.com, вы можете подписаться на «совет дня PowerShell», отправленный по электронной почте.

Что касается пересечения .NET - Powershell может загружать сборки .NET и вызывать их, поэтому эти две вещи будут дополнять друг друга.

12
ответ дан 6 December 2019 в 06:03
поделиться

Я поддержу рекомендации PowerShell. Разработчики в команде PowerShell были старыми руками Unix, и в PowerShell есть ряд Unix-подобных функций.

Что-то вроде Cygwin позволит вам использовать bash напрямую, но я бы не рекомендовал его по нескольким причинам. Во-первых, если вы работаете в среде Windows, PowerShell будет проще для кого-то без вашего опыта поддержки bash. Во-вторых, администрирование Windows станет проще в среде, где вы можете легко получить доступ к методам для объектов WMI и т. Д.

PowerShell имеет множество преимуществ традиционной оболочки Unix, но PowerShell имеет одно огромное преимущество: вы можете вызывать методы при объединении команд по конвейеру вместо анализа текста. Каждая команда возвращает объект.

5
ответ дан 6 December 2019 в 06:03
поделиться

Powershell, без вопросов, если вы собираетесь администрировать среду 2008 года или новее. Я часто бываю на конференциях Microsoft, и они вкладывают все свои микросхемы в Powershell.

6
ответ дан 6 December 2019 в 06:03
поделиться

Cygwin может поддерживать ваши навыки написания сценариев Unix актуальными в среде Windows. Powershell, похоже, на данный момент является официальным языком сценариев .Net. Однако не стоит сбрасывать со счетов другие варианты. Есть Ironpython , IronRuby и другие. Многие из языков сценариев Java, такие как Groovy , могут работать под .Net через IKVM

4
ответ дан 6 December 2019 в 06:03
поделиться

VBScript, batch и Powershell - самые большие, о которых я могу думать. Также узнайте, как работает WMI и как его вызвать из VBScript / Powershell.

1
ответ дан 6 December 2019 в 06:03
поделиться

Я много использовал PowerShell, это очень простой и мощный язык программирования, но он не поддерживает Windows 2000! И это заставило меня установить среду выполнения PowerShell на каждый компьютер в локальной сети. Что касается IronRuby, я рекомендую BOO - красивый и мощный язык.

0
ответ дан 6 December 2019 в 06:03
поделиться

I've been switched over to Linux for a few years myself, but I have recently done a few projects in Windows using Perl and I cannot recommend it enough. If you're actually going to be writing scripts, rather than single-commands, it's definitely worth considering. Check out Strawberry Perl. You might even be able to find a decent Perl shell that runs under strawberry perl, in which case you could use it for single-command stuff, too. Check out http://perldoc.perl.org/perlfaq3.html#Is-there-a-Perl-shell?

And don't think that Perl isn't good for scripting Windows stuff. In my recent projects, I've scripted with both Outlook and Excel in Perl using Win32::OLE, and it's worked like a charm!

2
ответ дан 6 December 2019 в 06:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: