Välkommen tillbaka till Campusbokhandeln! Läs mer här!
Framework Design Guidelines | 3:e upplagan
- Häftad, Engelska, 2020
- Författare: Krzysztof Cwalina, Brad Abrams, Jeremy Barton
- Betyg:
412
kr
Skickas inom 6-20 vardagar
Butikslager
Onlinelager
I lager hos leverantör
$event.detail.name === 'store-selector' ? isOpen = true : ''"
@close-drawer.window="() => $event.detail.name === 'store-selector' ? isOpen = false : ''"
@keydown.escape.window="isOpen = false"
x-init="$watch('isOpen', value => {
if (value) {
$refs.dialog.showModal();
document.body.style.overflow = 'hidden';
//emit onDrawerOpen event
$dispatch('drawer-opened', {
name: 'store-selector'
});
} else {
setTimeout(() => {
$refs.dialog.showModal();
$refs.dialog.close();
}, 300);
document.body.style.overflow = '';
$dispatch('drawer-closed', {
name: 'store-selector'
});
}
});"
class="h-full"
>
Beskrivning
Framework Design Guidelines, Third Edition, teaches developers the best practices for designing reusable libraries for the Microsoft .NET Framework. Expanded and updated for .NET 7.3, this new edition focuses on new concepts which have altered the current and best practices for developing components in .NET.
This book can improve the work of any .NET developer producing code that other developers will use. It includes copious annotations to the guidelines by prominent architects and practitioners of the .NET Framework, providing a lively discussion of the reasons for the guidelines as well as examples of when to break those guidelines
Microsoft architects Krzysztof Cwalina, Jeremy Barton, and Brad Abrams teach framework design from the top down. From their significant combined experience and deep insight, you will learn
- The general philosophy and fundamental principles of framework design
- Naming guidelines for the various parts of a framework
- Guidelines for the design and extending of types and members of types
- Issues affecting—and guidelines for ensuring—extensibility
- How (and how not) to design exceptions
- Guidelines for—and examples of—common framework design patterns
Guidelines in this book are presented in four major forms: Do, Consider, Avoid, and Do not. These directives help focus attention on practices that should always be used, those that should generally be used, those that should rarely be used, and those that should never be used. Every guideline includes a discussion of its applicability, and most include a code example to help illuminate the dialogue.
Framework Design Guidelines, Third Edition, is the only definitive source of best practices for managed code API development, direct from the architects themselves.
Produktinformation
Kategori:
Okänd
Bandtyp:
Häftad
Språk:
Engelska
Förlag:
Pearson Education
Upplaga:
3
Utgiven:
2020-08-10
ISBN:
9780135896464
Sidantal:
0
$event.detail.name === 'primary-menu' ? isOpen = true : ''"
@close-drawer.window="() => $event.detail.name === 'primary-menu' ? isOpen = false : ''"
@keydown.escape.window="isOpen = false"
x-init="$watch('isOpen', value => {
if (value) {
$refs.dialog.showModal();
document.body.style.overflow = 'hidden';
//emit onDrawerOpen event
$dispatch('drawer-opened', {
name: 'primary-menu'
});
} else {
setTimeout(() => {
$refs.dialog.showModal();
$refs.dialog.close();
}, 300);
document.body.style.overflow = '';
$dispatch('drawer-closed', {
name: 'primary-menu'
});
}
});"
class="h-full"
>
$event.detail.name === 'mobile-search' ? isOpen = true : ''"
@close-drawer.window="() => $event.detail.name === 'mobile-search' ? isOpen = false : ''"
@keydown.escape.window="isOpen = false"
x-init="$watch('isOpen', value => {
if (value) {
$refs.dialog.showModal();
document.body.style.overflow = 'hidden';
//emit onDrawerOpen event
$dispatch('drawer-opened', {
name: 'mobile-search'
});
} else {
setTimeout(() => {
$refs.dialog.showModal();
$refs.dialog.close();
}, 300);
document.body.style.overflow = '';
$dispatch('drawer-closed', {
name: 'mobile-search'
});
}
});"
class="h-full"
>
$event.detail.name === 'mini-cart' ? isOpen = true : ''"
@close-drawer.window="() => $event.detail.name === 'mini-cart' ? isOpen = false : ''"
@keydown.escape.window="isOpen = false"
x-init="$watch('isOpen', value => {
if (value) {
$refs.dialog.showModal();
document.body.style.overflow = 'hidden';
//emit onDrawerOpen event
$dispatch('drawer-opened', {
name: 'mini-cart'
});
} else {
setTimeout(() => {
$refs.dialog.showModal();
$refs.dialog.close();
}, 300);
document.body.style.overflow = '';
$dispatch('drawer-closed', {
name: 'mini-cart'
});
}
});"
class="h-full"
>
$event.detail.name === 'add-to-cart' ? isOpen = true : ''"
@close-drawer.window="() => $event.detail.name === 'add-to-cart' ? isOpen = false : ''"
@keydown.escape.window="isOpen = false"
x-init="$watch('isOpen', value => {
if (value) {
$refs.dialog.showModal();
document.body.style.overflow = 'hidden';
//emit onDrawerOpen event
$dispatch('drawer-opened', {
name: 'add-to-cart'
});
} else {
setTimeout(() => {
$refs.dialog.showModal();
$refs.dialog.close();
}, 300);
document.body.style.overflow = '';
$dispatch('drawer-closed', {
name: 'add-to-cart'
});
}
});"
class="h-full"
>